I am a SBCL user for more than 2 years, and while I hoped to get
into SBCL itself and contribute, I can't because of lack of time.
On the other side, since I am busy in work, I have some money which
I would like to spend on further SBCL advancements.
I would like to discuss with you, dear SBCL developers, possibilities
of creating some bounty scheme, where will be some wishlist of
features - or just one feature for now - which users would like to see
in SBCL, and could support development of such feature with their
contributions. Management of such bounty scheme should be done
by trustworthy and well known person in SBCL community.
Also, assignments for implementing wanted features could be done by
the same person to a developer(s), who should design and implement
the feature. Sure, many details should be polished in such scheme,
however the main point is to let people decide which feature is
attractive enough for them to spend some money on. Since there
will probably never enough community money to employ a person which
will work on implementation of the features, this scheme will suit
best to advanced hackers working as contractors.
My main motivation to ask whether this scheme is interesting to
any of you, is that I would like to use in future a better SBCL,
serving better my needs. Features I consider very important for
my future usage of SBCL are continuations and lightweight threads,
since they are ultimate abstractions to many different problems.
Continuations with indefinite extent seems to be the most wanted
and most often reimplemented feature since they are The Right Thing
To Do in many situations. SBCL's IR is in CPS form, so the question
is, would it be possible for experienced SBCL hacker to bring this
feature into light in 3-6 months? If yes, how much money should be
allocated? The other feature - light threads - is just a necessity
for the computing future. Seems like all other languages (Oz, OCaml,
Haskell, Erlang (canonic example) and others) are going this way
because using real actors significantly simplifies design of many
systems. Having futures, promises and join calculus in SBCL would
allow SBCL to move into many different areas.
I would be happy to contribute with 1000 UK pounds per year, to
see such features in future SBCL. I believe, that since these
features are example of what many users ask for, allocating
significantly more money would allow experienced hacker to fully
concentrate on the task.
So now, what do you think?