[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: What design is: 911 vs. Fleetwood



At 12:02 PM 12/13/2001, Paul Graham wrote:
>Oversteer was something that was not a problem for race
>car drivers but threw novices (literally) for a loop.
>I think the equivalent for Lisp generally would be its
>syntax.
>
>People always used to claim that Lisp was slow, but I
>think what really scared average users was the way code
>looked.  Saying it was slow just seemed (possibly even
>in their own minds) a more legitimate excuse for not
>using it.
>
>I'm not sure how scary Arc's eventual syntax will look.
>Right now it's all s-expressions, because we're still
>working on the core semantics.

I'm glad Arc may look less scary than Lisp and yet keep Lisp's essential features.  This kind of adaptability has been part of its Lisp's past and should be a leading part of its future.

Proto is another interesting Lisp variant.

I never thought of a connection between the slowness myth and the syntax.  
However, adjectives do get strung together.  Here's a quote from
http://www.ercb.com/ddj/1997/ddj.9709.html

"only a small fraction of programmers have ever worked with garbage collected languages. In part, this has been because of garbage collection's historic association with interpreted, high-level, and (most importantly) slow
languages such as lisp."

Even Shriram's paper http://citeseer.nj.nec.com/cache/papers/cs/19047/http:zSzzSzwww.cs.rice.eduzSzCSzSzPLTzSzPublicationszSzesop2001-gkvf.pdf/graunke01programming.pdf
refers to a "Scheme interpreter" although we know it is just code for "butt kicking".

Before we leave Lisp by the side of the road as a brainy but limbless language, its worth pointing out that Dick Gabriel, and many others (some on this list) have worked hard to make Lisp efficient, and that work lives on in other languages.  For actual numbers see http://openmap.bbn.com/~kanderso/performance/

Also, while not a standard part of the language, Lisp had libraries for things like window systems, database access, CORBA and web servers.  C++ also suffered from the lack of standard libraries.  These libraries can lock you in to particular implementations so the community of developers becomes Balkenized.

Perl, Python, and Java have shown the importance of standard libraries.  Where does a new language get such libraries?  Well, stealing them from C is basically what Perl and Python did.  Java had armies of programmers writing libraries.  Now it has armies of people writing Specs for JSR's which lead to standard interfaces with implementations provided by vendors. Perhaps it is just reaching the Balkens.

k