Choosing a programming language as a competitive tool

Steven D. Majewski sdm7g at Virginia.EDU
Thu May 3 18:30:48 EDT 2001


On Wed, 2 May 2001, Courageous wrote:

> Not really, no. Not only is it difficult to find Lisp programmers, 

If you poke about on comp.lang.lisp, you'll often find complaints that
there aren't enough lisp JOBS. In a current thread, someone testifies
that they were able to fill some positions with good programmers because
good lisp programmers were eager to find a lisp programming position. 
Wage competition was much tougher for good Java/C++ programmers. 

There is a chicken and egg problem -- few lisp jobs means low demand
for lisp skills which produces fewer lisp programmers. However, since
several schools have lisp or scheme firmly in their curiculum, there's
more likely to be extra lisp programmers produced beyond that demand. 

Anecdodal evidence on comp.lang.lisp confirms that there are far 
more lisp programmers who would like jobs as lisp programmers who are
taking jobs as C++ or Java programmers, than there are Lisp jobs 
that are going unfilled. ( There are probably some jobs going unfilled,
but that because good programmers of all sorts are in short supply
and high demand. ) 


>								it's hard
> to train them, and even harder to make them good Lisp programmers.

In my experience, Python is certainly much easier to learn or teach
than Lisp, but is Lisp harder to learn or master than C++ or Java ? 
I don't think so!  I'ld say it's easier than C++ and perhaps on a 
par with Java. 

The main problem with becomming a GOOD lisp programmer is similar
to the problem with becomming a GOOD Python programmer (and from 
what I hear is also a problem with Java):  the language
does a lot for you and you're not always aware of the costs. 
Becomming really good requires learning not just the language, 
but a model of the runtime and the relative costs of various
features. 



I won't disagree with your other points. There may be more Python
resources available -- probably more folks on comp.lang.python
willing to explain those intricacies to you -- and there's 
certainly a lot more Java and C++ books than Lisp and Python
books combined. And if you're starting from a base of C knowledge,
then C-like languages are going to be a bit easier to learn. 
But there's no magical mystery to Lisp -- I've seen non programmers
pick it up (and also Forth -- another non C-like language) faster
and with less effort than learning C. 

There may well be a shortage of good Lisp *trainers*  -- which 
is a real barrier to lisp adoption -- but that's rather different
that the implication that the language is inherently difficult. 

I can accept the truism that recursion is more difficult to grasp
that iteration -- but Lisp has iterative constructs. The fact that
most Lisp texts start early on recursion has more to do with Lisp
culture and it's academic roots. ( Again -- that is still a real
downside to adopting or learning lisp -- but I'm trying to distinguish
between those real problems and the myth that Lisp is inherently
difficult.) 


-- Steve Majewski






More information about the Python-list mailing list