scripting language vs. developer community size

Dan Kegel dank@alumni.caltech.edu
Sun, 14 Jan 2001 21:17:40 -0800


I'm sure this has been discussed a zillion times but I'd like to bring it up again:

Requiring that all high-level Gnucash code be in Scheme might be 
restricting the number of developers able to contribute to it.

Here's a few quotes from the web in support of that theory 
(found by searching for "scheme learning curve"):

http://www.cs.utah.edu/plt/mailarch/plt-scheme-2000/msg00667.html
"Scheme is so much different from your other everyday languages that people
simply ignore it."

http://www.cs.utah.edu/plt/mailarch/plt-scheme-2000/msg00668.html
"If I didn't have to learn it for a CS class here at Georgia Tech, 
I probably would have taken one look at Scheme and run screaming."

http://www.red-bean.com/guile/guile/new/msg00423.html
"I'm just getting to the "solving everyday programming tasks" myself.  The
learning curve on scheme has been steeper for me than on any previous
language (although it just barely beats learning the OO paradigm for C++).
I'd previously been in the habit of reaching the skill level needed to
solve most basic problems in well under a week, but Scheme seems to want
more of my time than that.
Stepping back a bit though, I wonder if the difficulty isn't more in the
fact that Scheme assumes some much different programming thought
processes than those used in C,C++,Perl,Java,etc."

Also, http://brainbench.com specializes in proficiency tests, and offers them
for C, C++, and Java, but not for Scheme.  (Probably means size of
job market for Scheme skills is far smaller than that for C, C++, or Java skills.)

Given the above, allowing people to contribute plugins written in some 
procedural language like Perl might expand the potential pool of 
plugin-writers by about a factor of ten.

The new stable Gimp allows plugins to be written in Perl for just that reason.
If the Gimp can do it, how about you folks?  Scheme for the literati
who think in terms of side-effect free functions, and Perl for the rest of us?

And while I wait for this new scripting interface :-), how long does it 
take in your experience for the average C/C++/Java programmer to learn Scheme 
well enough to really understand Gnucash and contribute to it?

- Dan