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

Re: Yes, they are special, but...

   Date: Fri, 9 Jun 89 09:16 CDT
   From: ai.gooch@MCC.COM (William D. Gooch)
   Subject: Yes, they are special, but...
       ...."highly specialized hardware"....
   I've heard this idea bandied about enough that I suppose I should
   understand it by now, but - sorry if I'm being dense - I still don't
   know what it means.  The term "specialized," usually stated as in
   opposition to "general-purpose," implies that there are things one
   cannot do on a Symbolics machine which other hardware does support.
   If you don't mind my asking, what are those things?  
You can't run Un*x.

Don't get the wrong idea.  I detest Un*x.  Despite (or perhaps on
account of?) having written a C compiler, I detest C.  But for better or
worse, a lot more generally useful applications and tools are being
written in C for Unix than for LispMs.  It also provides multi-user
capability with some semblance of security, which is valuable in many
environments.  Thirdly and perhaps most importantly, lots of people out
there already know Un*x or something similar -- it is fairly solidly in
the computing mainstream -- and the user interface and programming
philosophy of the LispM, while arguably much superior on many counts, is
anything but mainstream.  I think this justifies calling it
"specialized", though in a different sense of that word than the one you

You won't be able to run Mach on LispMs either.  I dare to hope Mach
will be something worth running.

More nitty-gritty: you can't run multiple processes in separate address
spaces on the LispM.  I think this is actually a fairly serious
limitation for some applications.  (Besides the fact that it means the
CPU can do little more than twiddle its thumbs during page faults.)  It
certainly keeps the machine from being effective in multi-user
applications.  (Again, don't get me wrong.  I don't fundamentally
disagree with the "one user, one CPU" philosophy.  I just think of it as
a first approximation, not a rigid rule.)

It's a lot harder than it should be to develop software for delivery on
other hardware platforms.  There are things Symbolics could do to make
this easier even for Common Lisp, like checking type declarations for
consistency.  Window systems used to be a major problem here, but of
course recently, with the advent of X, that's getting better.  Running
other languages than Lisp on Lisp Machines brings its own set of
problems; many of these can rightly be blamed on the brain-damage of the
other language in question, but unfortunately it doesn't matter whose
fault they are: they still get in the way.

Seems to me that if Symbolics machines were price and performance
competitive with Suns etc., or were even just 20% to 30% more expensive,
these failings might be more readily overlooked in the marketplace.  But
the one-two whammy of incompatibility and price seems to have been
fatal.  Symbolics is addressing these issues, of course, but I am afraid
they missed their chance by failing to do so in 1983.