SBCL Crowdfunding at IndieGoGo

Discussion of Common Lisp
Post Reply
nikodemus
Posts: 7
Joined: Fri Jul 04, 2008 8:32 am

SBCL Crowdfunding at IndieGoGo

Post by nikodemus » Wed Aug 10, 2011 10:46 am

(I hope this doesn't violate any forum rules.)

Hi,

I have an SBCL crowdfunding campaign up at IndieGoGo. If you use SBCL, go take a look.

Cheers,

-- Nikodemus

nikodemus
Posts: 7
Joined: Fri Jul 04, 2008 8:32 am

Introducing MADEIRA (Re: SBCL Crowdfunding at IndieGoGo)

Post by nikodemus » Sat Aug 13, 2011 3:46 am

So, the campaign has been a roaring success -- all initial goalposts have been hit in 3 days out of 19.

This means it was time for a new goal.

If the campaign reaches $12k, in addition to the SBCL specific work I will also implement Madeira, a new portability layer for Common Lisp implementations, focusing on threading and parts not covered by CFFI or USOCKET.

The current plan is for Madeira to support:
  • Basic things like access to command-line arguments, environment, EXIT, etc.
  • Bordeaux-Threads -like functionality, but better defined, with sharper edges.
  • CAS. Remains to be seen how general I can make the support, though.
  • Running external programs. (Probably somewhere between TRIVIAL-SHELL and SBCL's RUN-PROGRAM in functionality.)
Another way to describe Madeira would be to say that it should cover most everything that I keep having to #+sbcl when writing portable code.

Even if the full goal for Madeira is not be reached, any funds over $8k will be used towards implementing at least parts of it.

Gentle hacker, spread the word: it's not just SBCL users who stand to benefit now.

Thank You again, Everyone.

smithzv
Posts: 94
Joined: Wed Jul 23, 2008 11:36 am

Re: SBCL Crowdfunding at IndieGoGo

Post by smithzv » Sat Aug 13, 2011 11:16 am

Sorry, what does CAS stand for in this context?

nuntius
Posts: 538
Joined: Sat Aug 09, 2008 10:44 am
Location: Newton, MA

Re: SBCL Crowdfunding at IndieGoGo

Post by nuntius » Sun Aug 14, 2011 7:56 am

CAS = compare and swap
This is an atomic operation supported by most hardware.
Rather than "(when (= x 4) (setf x 5))", you write "(cas x 4 5)". This allows the test and set to occur without interference from other threads/processes but also without locking a mutex (which could block indefinitely).

nikodemus
Posts: 7
Joined: Fri Jul 04, 2008 8:32 am

Re: SBCL Crowdfunding at IndieGoGo

Post by nikodemus » Sun Aug 28, 2011 7:01 am

Now taking a final run at the final goalpost! If $16k funding is reached, it's time to kiss the big compiler lock goodbye.

Again, Thank You Everyone,

-- Nikodemus

Post Reply