Path: utzoo!censor!geac!torsqnt!lethe!yunexus!ists!helios.physics.utoronto.ca!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!arris!rshapiro
From: rshapiro@arris.com (Richard Shapiro)
Newsgroups: comp.lang.lisp
Subject: Re: Is this the end of the lisp wave?
Message-ID: <1991Jan14.141651.12321@arris.com>
Date: 14 Jan 91 14:16:51 GMT
References: <2456@paradigm.com> <22573@well.sf.ca.us> <96861@aerospace.AERO.ORG> <5256@idunno.Princeton.EDU>
Organization: ARRIS Pharmaceutical, Cambridge, MA
Lines: 66

In article <5256@idunno.Princeton.EDU> eliot@phoenix.Princeton.EDU (Eliot Handelman) writes:
>It died because it was linked to AI and that died. The whole beauty of
>list processing was that at one time it was seriously believed that 
>thought was essentially list processing, and if you toss in recursion
>you can accomodate self-consciousness too. 


I've been a Lisp/AI programmer for the last 10 years or so, and this
is the first time I've ever heard this *very* peculiar argument. Many
AI programmers use Lisp for much simpler reasons:


1) It's the best general purpose programming language for symbolic
computing, and symbolic computing has turned out to be very useful in
AI applications. There are special purpose languages that are better
at symbol manipulation, but of the widely available general languages,
no other one really comes close.

2) The equivalence between program structures and data structures
makes dynamic computation quite straightforward. No other high-level
language offers this.

3) As a side-effect of (1) and (2), it's very easy to write "higher
level" languages based on Lisp (eg rule languages, knowledge rep.
languages, etc).

4) In particular, the higher-level language construct known as
object-oriented programming folds very well into Lisp -- it's a much
better fit than, say, object-oriented C. I assume we all know the
advantages of oop by now...

5) For various reasons, Lisp systems tend to have quite sophisticated
programming environments, and these are essential in the generation of
complex programs (eg AI programs). Symbolics LISPMs are a particularly
good example of this. The increase in productivity is impossible to
overstate.


>A lisp machine was a machine
>whose resident language was "the logic of thought." No one believes this
>anymore, 

I don't think any Lisp programmer ever believed this. Perhaps some
theorist wrote something like this in a journal somewhere. As I say,
I've been working in the field for quite awhile, and I haven't ever
heard any Lisp programmer make this claim, or anything even remotely
like it.

>so lisp semantics have been relativized, and now it's in competition
>with much faster languages which have no such pretensions, but which
>are computationally equivalent. 

"Computation equivalence" is a useless term. FORTRAN is
computationally equivalent. The question is: how easy is it to write
and maintain sophisticated programs? Lisp is still the clear winner
(among readily available languages, at least) in this regard.

As for speed, there are of course certain applications which require
greater speed than any Lisp can offer. I would claim that these
constitute a very small percentage of the kinds of programs Lisp is
generally used to write.

The reason Lisp has not gained even wider acceptance is due more to
institutional and managerial inertia. The people who are in a position
to make the decisions are simply afraid to make the switch from
whatever it is they're used to.