In article <5ip5km$qhh$1@news.utdallas.edu>, mharriso@utdallas.edu (Mark A
Harrison) wrote:
> Henry Baker (hbaker@netcom.com) wrote:
> : You make a good point about the importance of environments. That's
precisely
> : the advantage of Lisp. You get a uniform picture of the world -- everything
> : is Lisp. You don't have to know anything about machine language,
assemblers,
> : linkers, and all plethora of itty bitty 'tools' with <3-character names.
> : You have the same language for writing macros, the same language for writing
> : system code, the same language for writing scripts, the same language for
> : writing editor extensions, the same language for interacting with windows,
> : etc.
>
> I think this is what was responsible for the diminishing influence
> of Lisp... It's all-or-nothing, violating the principle "interoperate
> or die."
Well, Lisp _is_ a jealous god. You want productivity, and I told you how to get
it. If that means not cluttering up your system with 25 languages, then you
won't do it if you want productivity.
You start falling prey to a 'productivity' form of Amdahl's Law:
If you are programming in Lisp and another language (C++, say), and about
50% of the system is written in each, then even if Lisp has _infinite_
productivity, you've only speeded things up by a factor of 2. Thus, even
a little bit of a non-Lisp language can really throw a monkey wrench into
the system, given that Lisp is so much more productive than non-Lisp. You
therefore need to _minimize_ the amount of non-Lisp code in order to maximize
your productivity.
Note that adding non-Lisp _libraries_ still screws you up, because a non-Lisp
library can corrupt your memory just as badly as if you weren't running Lisp
at all. Thus, all your productivity goes down the drain as you hunt for the
dangling reference caused by the non-Lisp library.
Number One Myth in Computer Science Today: 'All high level languages are
essentially alike, with only minor variations in productivity'.
This is the Big Lie promulgated by C/C++, because it convinces management
that there is little to be gained by utilizing a language like Lisp or
Smalltalk or Prolog.
The truth is that there are tremendous variations in the productivity of
different languages. Did you ever notice how nearly all of the studies
of this issue conveniently leave out Lisp, Smalltalk and Prolog?
|