Super-dee-duper D features

X Bunny xbunny at eidosnet.co.uk
Tue Feb 13 08:50:11 PST 2007


Johan Granberg wrote:
> X Bunny wrote:
>> My personal feelings as to why Lisp isnt as popular as it could be are
>> some of these misconceptions:
>>
>> 1) Its all functional code and recursion
>> 2) The syntax is weird and mindbending
>> 3) Lisp is interpreted and therefore slow.
>> 4) Its hard to interface Lisp with non Lisp libraries and operating
>> system services.
>> 5) Lisp is old and hasnt changed since the 50's
>> 6) The features are really clever but they wouldnt be useful in a 'real'
>> program
>> 7) Its for AI or 'weird' programs
>> 8) You have to be really clever to program in Lisp
>> 9) Lisp is poorly documented and hard for a beginner to understand
>> 10) Its irrelevant because we have Java/C++/something else now
>>
> From my attempt to learn lisp some months ago i think that at least 4 and 9
> is true (please correct me if I'm wrong). A big part of that issue is that
> it looks like the different implementations does things slightly
> differently and that creates a fragmentation of the community and causes
> libraries to require specific implementations (I'm mainly talking of the C
> interface here as that is what I looked at). Regarding 9 if you know a good
> lisp tutorial please post a link. (especially how to build code and the
> quote special syntax)

I do admit (4) is largely debateable, compared to D and many other 
successful languages its no harder, but certainly yes your point that 
different implementations have different ways of doing it is true and it 
is not mandated by the ANSI standard for the language. However the CFFI 
library abstracts these differences annd supports many implementations.
Regarding (9) a well regarded book is called Practical Common Lisp ( the 
complete text is online at http://www.gigamonkeys.com/book/ ).

My reasons why I dont use Lisp as often as I would like are:
1) Deploying Lisp applications can be difficult; huge exes if you can 
get your implementation to produce a standalone image atall.
2) Dependance on third party C++ libraries - DirectShow BaseClasses sigh 
:-( C++ libraries arent even compatible between C++ compilers nevermind 
to Lisp!
3) Too general - no matter how good Lisp is at doing everything there 
are languages written for a specific task which are probably better than 
Lisp for it within a limited niche. So long as you dont exceed the niche 
theres no need for Lisp. Definately there could have been a Lisp system 
which blows it away, there probably isnt, if there is does using it 
outweight the other points.
4) No company support - the boss is scared if I die no-one will maintain 
it as Lisp programmers are fairly rare.
5) Not a team player - by being subject to the above points Lisp starts 
to get pretty outcast in your toolbox because you know whatever you 
write with it might also only be useable in projects which can avoid 
those points too.

Apart from (1) these are also reasons why I dont get to use D as often 
as I would like.

Bunny



More information about the Digitalmars-d mailing list