From: William D. Gooch
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <Pine.A32.3.91.941018090811.17296C-100000@swim5.eng.sematech.org>
On Mon, 17 Oct 1994, Jeff Dalton wrote:

> ...
> But for how long could specialized/specially-microcoded machines
> continue to be faster than the alternatives?

For as long as someone is willing to put a small fraction of the effort 
into making the chips go faster as they do for stock chips.  Lisp 
hardware has not been pushed anywhere near as far up the performance 
curve as it can be.  

>  The value of a used Symbolics these days is not really a fair measure.

As I said, these machines were quite price/performance competetive when 
they were new.

I didn't say anything about value.  Currently, I'd say the *value* of a 
used Symbolics machine is significantly higher than the cost, if you want 
to do serious Lisp work.  There is nothing better or faster for most Lisp 
development in my experience, and I think it will be a while still before 
Lisps on stock hardware "catch up."  Given the choice between even an 
older, slower Symbolics and the fastest RISC machine with the best 
Unix-based Lisp available, I'd take the Symbolics.

If you're talking strictly about raw performance, I don't know the 
answer.  For the kind of work I do, raw performance is rarely the 
primary consideration.  Even when developing compute-intensive 3D image 
processing code, I was able to work and test effectively on a Symbolics 
3650, which is nowhere as fast as an XL1200.  Once debugged, the code 
could sit and run for a long time while I did something else, and the 
results were there when I came back.  Since I have two machines (neither 
of which cost me more than a decent color monitor for a PC), I suffered 
no ill effects due to the lack of horsepower.

From: Jeff Dalton
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <Cy1HHG.5Mz@cogsci.ed.ac.uk>
In article <········································@swim5.eng.sematech.org> "William D. Gooch" <······@swim5.eng.sematech.org> writes:
>On Mon, 17 Oct 1994, Jeff Dalton wrote:
>
>> ...
>> But for how long could specialized/specially-microcoded machines
>> continue to be faster than the alternatives?
>
>For as long as someone is willing to put a small fraction of the effort 
>into making the chips go faster as they do for stock chips.  Lisp 
>hardware has not been pushed anywhere near as far up the performance 
>curve as it can be.  

The specialized / micorcoded machines should do worse than CISC
machines against RISC.  Many of the same factors are involved.
I have no doubt that a simple (in the RISC sense) and fast Lisp
machine could be developed.  But that isn't what people were doing
in the early 80s when microcode was all the rage.

>>  The value of a used Symbolics these days is not really a fair measure.
>
>As I said, these machines were quite price/performance competetive when 
>they were new.

And then?

-- jeff
From: William D. Gooch
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <Pine.A32.3.91.941024091829.14402C-100000@swim5.eng.sematech.org>
On Fri, 21 Oct 1994, Jeff Dalton wrote:

> In article <········································@swim5.eng.sematech.org> "William D. Gooch" <······@swim5.eng.sematech.org> writes:
> >On Mon, 17 Oct 1994, Jeff Dalton wrote:
> >
> >> ...
> >> But for how long could specialized/specially-microcoded machines
> >> continue to be faster than the alternatives?
> >
> >For as long as someone is willing to put a small fraction of the effort 
> >into making the chips go faster as they do for stock chips.  Lisp 
> >hardware has not been pushed anywhere near as far up the performance 
> >curve as it can be.  
> 
> The specialized / micorcoded machines should do worse than CISC
> machines against RISC.  Many of the same factors are involved.
> I have no doubt that a simple (in the RISC sense) and fast Lisp
> machine could be developed.  But that isn't what people were doing
> in the early 80s when microcode was all the rage.

What do you think they were doing?

I guess I don't know enough about hardware to carry this discussion much 
further.  However, since the Symbolics Ivory architecture has quite a bit 
of Lisp implemented directly in the hardware, I think your conclusion may 
not be correct.  In terms of complexity, the Ivory chip is not bad.  I 
don't remember the exact numbers, but I seem to recall that it is similar 
to a 486 in number of components on the chip, but that a much smaller 
percentage of them are memory on an Ivory.

> >>  The value of a used Symbolics these days is not really a fair measure.
> >
> >As I said, these machines were quite price/performance competetive when 
> >they were new.
> 
> And then?

Hmm?
From: William D. Gooch
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <Pine.A32.3.91.941026134243.38686T-100000@swim5.eng.sematech.org>
On Wed, 26 Oct 1994, Jeff Dalton wrote:

> In article <········································@swim5.eng.sematech.org> "William D. Gooch" <······@swim5.eng.sematech.org> writes:
> >On Fri, 21 Oct 1994, Jeff Dalton wrote:
> >
> >> In article <········································@swim5.eng.sematech.org> "William D. Gooch" <······@swim5.eng.sematech.org> writes:
> >> >On Mon, 17 Oct 1994, Jeff Dalton wrote:
> >> >> ...
> >> >> But for how long could specialized/specially-microcoded machines
> >> >> continue to be faster than the alternatives?
> >> >
> >> >For as long as someone is willing to put a small fraction of the effort 
> >> >into making the chips go faster as they do for stock chips.  Lisp 
> >> >hardware has not been pushed anywhere near as far up the performance 
> >> >curve as it can be.  
> 
> Part of the problem is that the smaller market tends to mean they
> won't be pushed as far.

Too true.  I think the theory was that niche and vertical markets, 
especially with embedded Lisp hardware, could be exploited to create a 
sufficiently large market to justify continuing the investment.

> >> The specialized / micorcoded machines should do worse than CISC
> >> machines against RISC.  Many of the same factors are involved.
> >> I have no doubt that a simple (in the RISC sense) and fast Lisp
> >> machine could be developed.  But that isn't what people were doing
> >> in the early 80s when microcode was all the rage.
> >
> >What do you think they were doing?
> 
> Developing specialized, micro-coded machines.  If you tell me
> symbolics machines were RISC, I may have to believe you; but
> it seems very unlikely to me.

Not quite, although the Ivory comes closer than any of the others.  Much 
closer than Xerox or TI machines ever were, and hence less dependent on 
microcode for Lisp basics.  I freely admit to not being very familiar 
with LMI's Lambda architecture, so someone please correct me if I'm 
missing something here.

> Look, I don't *know* the answers.  I'm saying how it seemed to me.

Fine.  So am I.  I worked for Symbolics during some of this, but I was 
not a hardware designer.  

I pretty much concur with the rest of the comments in this post.

Going back to your earlier comments though, I disagree with the statement 
that "The specialized / micorcoded machines should do worse than CISC 
machines against RISC."  One reason this probably isn't true is word 
length.  Some of the Lisp architectures incorporated a word length that 
accomodates tag bits with enough left over for a virtual memory pointer 
or 32-bit (or larger) numeric data to fit in a single word.  This, coupled 
with parallel hardware for doing some important lispy things, will tend 
to make them win, even when the raw clock rate is noticeably lower.  The 
only time a conventional RISC machine is going to win is when its clock 
rate has been cranked way up (which is what's happening nowadays).
From: David Gadbois
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <38mv58$gs2@peaches.cs.utexas.edu>
William D. Gooch <······@swim5.eng.sematech.org> wrote:
>[...] I disagree with the statement that "The specialized /
>micorcoded machines should do worse than CISC machines against RISC."

I would hate to see the Lisp machines being misremembered as being
just about performance.  Sure, they were better or at least
competitive with "stock" hardware in terms of price/performance up
until the mid to late 80's.  But, IMHO, the main advantage was the
safety of the hardware/software environement -- you had to work really
hard to write code that would randomly corrupt and crash things.  This
safety let folks write impressively large and complex systems that are
still largely unmatched today.  It is great when code runs faster, but
if the code doesn't run at all because the sharp edges of the hardware
prevented it from ever being written, then the tradeoff is not so
great.  Ah well, we all know that worse is better.

--David Gadbois
From: William D. Gooch
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <Pine.A32.3.91.941027085359.19399B-100000@swim5.eng.sematech.org>
On 26 Oct 1994, David Gadbois wrote:

> I would hate to see the Lisp machines being misremembered as being
> just about performance.  Sure, they were better or at least
> competitive with "stock" hardware in terms of price/performance up
> until the mid to late 80's.  But, IMHO, the main advantage was the
> safety of the hardware/software environement -- you had to work really
> hard to write code that would randomly corrupt and crash things.

Absolutely.  I was merely responding to other comments, not claiming 
that the issues under discussion represent the primary advantages of 
specialized lisp hardware.  

However, I think that the performance issue was (and is) in a certain 
sense primary, in that it was the main issue that led to the development 
of Lisp hardware in the first place, and that the market consistently has 
had an intense concern about price/performance.  When Sun started 
producing reasonably priced high-performance workstations that could run 
a decent Lisp, people began deserting the LispM market in favor of 
cheaper fast hardware with less competent but useable software.  I think 
this happened because experienced users were able to do OK in spite of 
the limitations of the Lisps available on the other platforms, and they 
were willing to put up with it in order to save money.  To some degree, 
this was also supported by the market perception of LispM vendors as 
being arrogant and difficult to work with (in many ways a false 
perception IMO, but nonetheless a pervasive one).
From: Lou Steinberg
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <LOU.94Oct27125121@atanasoff.rutgers.edu>
In article <········································@swim5.eng.sematech.org> "William D. Gooch" <······@swim5.eng.sematech.org> writes:

   When Sun started 
   producing reasonably priced high-performance workstations that could run 
   a decent Lisp, people began deserting the LispM market in favor of 
   cheaper fast hardware with less competent but useable software.  I think 
   this happened because experienced users were able to do OK in spite of 
   the limitations of the Lisps available on the other platforms, and they 
   were willing to put up with it in order to save money. 

In addition, very few people do ONLY lisp - at the very least everyone
does email, news, English (papers, progress reports, etc.).  Lisp
machines were different enough from the standard timesharing systems
(and later, workstations) that they could not easily import the
standard software for non-lisp things, and there were not enough of
them that the lisp machine user world was able to develop a
competitive environment for these things.  So, to be productive at
one's job (as opposed to just the lisp programming part of one's job),
one really needed a lisp machine AND another machine for non-lisp
stuff.

I believe another early attraction of the Lisp machines was that they
were some of the first machines to provide good window-oriented
interfaces.  As I remember, when I was first using a Xerox D-machine
the alternative was to use a VT-100 kind of terminal connected to a
time sharing machine (Dec-20).  Simply being able to see more than 24
lines of my program on screen at once was a big advance!  Of course
the workstations when they became available also provided this,
removing another advantage of the Lisp machines.
From: Jeff Dalton
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <CyCHCt.73w@cogsci.ed.ac.uk>
In article <··········@peaches.cs.utexas.edu> ·······@cs.utexas.edu (David Gadbois) writes:
>William D. Gooch <······@swim5.eng.sematech.org> wrote:
>>[...] I disagree with the statement that "The specialized /
>>micorcoded machines should do worse than CISC machines against RISC."
>
>I would hate to see the Lisp machines being misremembered as being
>just about performance.  Sure, they were better or at least
>competitive with "stock" hardware in terms of price/performance up
>until the mid to late 80's.  But, IMHO, the main advantage was the
>safety of the hardware/software environement -- you had to work really
>hard to write code that would randomly corrupt and crash things.

I wonder about this.  I didn't use our Symbolics machine very
much, but it did seem moderately easy to get it into an odd state.
(Not nearly so easy as with D-machines.)  Moreover, your Lisp code
could do something that required a reboot.  With an ordinary OS
(Unix), your Lisp process might get messed up but everything else
sailed on regardless.

-- jeff
From: Richard Billington
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <BUFF.94Oct28135705@pravda.world>
In article <··········@cogsci.ed.ac.uk> ····@aiai.ed.ac.uk (Jeff Dalton) writes:

   In article <··········@peaches.cs.utexas.edu> ·······@cs.utexas.edu (David Gadbois) writes:
   >William D. Gooch <······@swim5.eng.sematech.org> wrote:
   >>[...] I disagree with the statement that "The specialized /
   >>micorcoded machines should do worse than CISC machines against RISC."
   >
   >I would hate to see the Lisp machines being misremembered as being
   >just about performance.  Sure, they were better or at least
   >competitive with "stock" hardware in terms of price/performance up
   >until the mid to late 80's.  But, IMHO, the main advantage was the
   >safety of the hardware/software environement -- you had to work really
   >hard to write code that would randomly corrupt and crash things.

   I wonder about this.  I didn't use our Symbolics machine very
   much, but it did seem moderately easy to get it into an odd state.
   (Not nearly so easy as with D-machines.)  Moreover, your Lisp code
   could do something that required a reboot.  With an ordinary OS
   (Unix), your Lisp process might get messed up but everything else
   sailed on regardless.

This is a real waste of bandwidth, but:

I've used Symbolics for over 11 years. I've occasionally used
unix-based lisps, and I've used MCL a moderate amount recently. Yes,
you can wedge a lisp machine, but the number of times I've not been
able to recover at least to the point of saving work is less than 5. I
did support for two different AI labs, and I'm including being unable
to save other people's work as well in that number. There's a
FEP-level debugger, if you're desparate, and almost always a warm-boot
gets you close enough back to where you were that it's ok. In other
environments, you wedge lisp and bang (at best) you're staring at the
unix prompt wondering where everything went and why, and cursing
'cause you've got to reload everything to get back to where you were -
at worst (and this has happened to me) you end up staring at the
monitor prompt and realizing that you have to reboot unix (or the mac
- and this happens real often) as well.

Symbolics were/are an order of magnitude more reliable than anything
else I've ever seen or heard of. I've developed a VERY bad habit of
not saving my work very frequently because it's just not a problem on
the Symbolics. The slug newsgroup at one point posted times for how
long the machines at different sites had been up, and many were in the
large fractions of a YEAR.

As to "not being able to do other work", the mailer on the Symbolics
is the one thing I REALLY don't want to lose - it has many features
for organizing and working with your mail that no other mailers have.
That mailer was there virtually from the beginning, and it interfaced
to the outside world (including using a unix mail spooler, if you
wanted) trivially. There's been a news reader for almost as long as
rn's been around. There was a latex and latex-mode for the editor and
a previewer - the previewer was there year(s) before anything like it
was available for unix.

As far as I'm concerned there's one thing that killed the Symbolics:
stupid management (most esp. in the early years). I learned from it
that even if a company has absolutely the best product bar none, don't
invest in it unless they've got great management.

There are lots of reasons to use lisp on "stock" hardware as opposed
to a Symbolics: reliability, however, is far and away the least of
them.

   -- jeff





--
Richard Billington
····@cc.gatech.edu
From: Jeff Dalton
Subject: Re: Why do people like C? (Was: Comparison: Beta - Lisp)
Date: 
Message-ID: <CyCCqv.4M9@cogsci.ed.ac.uk>
In article <········································@swim5.eng.sematech.org> "William D. Gooch" <······@swim5.eng.sematech.org> writes:
>On Wed, 26 Oct 1994, Jeff Dalton wrote:
>>
>> Look, I don't *know* the answers.  I'm saying how it seemed to me.
>
>Fine.  So am I.  I worked for Symbolics during some of this, but I was 
>not a hardware designer.  
>
>I pretty much concur with the rest of the comments in this post.
>
>Going back to your earlier comments though, I disagree with the statement 
>that "The specialized / micorcoded machines should do worse than CISC 
>machines against RISC."  One reason this probably isn't true is word 
>length.  Some of the Lisp architectures incorporated a word length that 
>accomodates tag bits with enough left over for a virtual memory pointer 
>or 32-bit (or larger) numeric data to fit in a single word.  This, coupled 
>with parallel hardware for doing some important lispy things, will tend 
>to make them win, even when the raw clock rate is noticeably lower.  The 
>only time a conventional RISC machine is going to win is when its clock 
>rate has been cranked way up (which is what's happening nowadays).

Fair enough.  That sounds reasonable to me.

Thanks for taking the time to go through this.

-- jeff