scsh-users
[Top] [All Lists]

Re: Lisp is neither (was Re: Ousterhout and Tcl lost the plot)

To: scsh@martigny.ai.mit.edu
Subject: Re: Lisp is neither (was Re: Ousterhout and Tcl lost the plot)
From: hbaker@netcom.com (Henry Baker)
Date: Sun, 20 Apr 1997 17:14:43 GMT
Organization: nil
There are so many errors in your assertions, that it's difficult to know
where to start.

In article <5jbcvl$puh@engnews2.Eng.Sun.COM>, ouster@tcl.eng.sun.com (John
Ousterhout) wrote:

> One of the most common criticisms of my white paper has been that the
> distinction between scripting and system programming is artificial, and
> that it is possible for a single language to be good at both tasks.
> Lisp-like languages such as Scheme were suggested as living proof.  I
> can't prove that it's impossible for a single language to be good at
> both scripting and system programming, but I don't know of a good example
> and I doubt that it will ever happen.

Two words: 'Lisp Machine'.

> The reason for this is the
> difference in typing, as I explained in the white paper. A given language
> embodies a particular style of typing, which can range from very strongly
> typed to totally untyped.  Once that decision has been made, the language's
> position on the spectrum between system programming and scripting is set.
> I think it's possible to have a language that's in the middle, but it's
> not likely to be terrific at either task.

You've obviously never heard of Lisp declarations, or of 'soft typing'.

> Let's take Lisp as an example.  I think that Lisp falls somewhere
> between scripting and system programming.  Many of you have suggested that
> it is an ideal language for both system programming and scripting, but I
> think that it isn't really very good for either.

Two words: 'Lisp Machine'.

> In fact I suspect that
> this may be why Lisp hasn't been used much for practical programming.
> Lisp isn't a good system programming language because it's too hard to
> write efficient programs in it and it doesn't provide good low-level
> access to machine facilities.

Utter claptrap.  I've written many Lisp programs on the PDP-10 and the
68K (Mac) that run as fast as any hand-crafted assembler program.

Two more words: 'Lisp Machine'.

> On the other hand, Lisp isn't good for
> scripting either.  In order to be a good scripting language, you need
> to be able to interoperate with lots of other things, which are often
> written in other languages (the best glues are those that stick to lots
> of different materials).  But Lisp has never been very good at this.
> For example, it's hard to include C code with Lisp because they have
> very different data types and memory models.  Lisp systems are typically
> closed: you have to live entirely in the Lisp world.  Good scripting
> languages are open and friendly: they talk to and work with everything.

The Symbolics Lisp Machine also supported the C language, and an excellent
C language it was.  C on this machine wasn't particularly fast, but that was
because the Lisp Machine had better things to do than to twiddle bits.

> Just to short-circuit the discussion that will ensue...
> 
> Many of the best minds in Computer
> Science have worked on Lisp over the last 30 years, and they haven't
> been able to fix the language so that it could be widely used either
> for system programming or scripting tasks.  This says to me that there
> is something fundamentally wrong with the language, at least for these
> tasks.

I suppose that all of the excellent work in Lisp on scheduling space probe
operations, scheduling factory operations, handling your American Express
card credit ratings (in real-time, 7x24), scheduling Gulf War supplies,
demonstrating the next generation of fighter pilot cockpit aids, etc., was all
a mirage?  I guess you see what you want to see.

I'm embarrassed that a 'computer science professor' would be _so_ ignorant
of computer science that he would spout all of this nonsense.

<Prev in Thread] Current Thread [Next in Thread>