Symbolics / LISP machines

From: Brad Parker <brad_at_heeltoe.com>
Date: Thu May 20 12:45:45 2004

"Fred N. van Kempen" wrote:
>Hi,
>
>> > * Symbolics 3650 (heavy)
>> > * 2 extra color memory boards
>> > * extra 2MW memeory board
>> > * Monitor & keyboard
>>
>> I'd love to get a Lisp Machine, but I really can't justify to myself
>> either the shipping costs or the space it would take up. Fortunately
>> it appears it won't get tossed, which is my other worry.
>
>OK.. so how do I see such a machine... I can't figure out how a LISP
>machine "works" , or gets programmed. Guess they're from before my
>time... heeeelp !?

oh, don't get me be *started*! :-)

there are/where many different lisp machines.

On the surface, they were basically all specialized microcoded cpu's
which were built to run lisp. Almost all had high resolution b&w
displays, mice and large keyboards. Disks and ethernet also. In some
sense they where the first "single user workstation".

The first machines came from MIT - the CONS and CADR. Later LMI and
Symbolics made commericial machines (TI later took over some of LMI's
machines).

Symbolics went the furthest, reducing the machine to a VLSI cpu which was
reasonably quick for it's day (the 'ivory').

The machine in question, a 3650 is a 36 bit microcoded cpu. It has a
"front end processor" (a 68000) which is smart enough to initialize the
console and boot the microcode from the disk (mostly likely a giant 14"
SMD disk, approx 200-400mbytes in size).

These machines revolve around a lisp compiler, which reduces the lisp
code to macroinstructions. The microcode runs the macroinstructions.
They are (on the 36xx) 18 bits wide, so two macroinstructions per 36 bit
word. The macroinstruction are close to 1-to-1 for many lisp
instructions. There are a *large* number of instructions. Risc this is
not.

Once the microcode is loaded the FEP will load a "world", which is a
essentially off the compiled lisp code need to get going. It then fires
up the microcode and off you go. (theses are also called "bands" on
other machines).

There is a hierarchical file system, and processes, but the way it all
works is not like unix. You compile lisp code and it gets loaded into
your world. Your world just grows and grows, making heavy use of
virtual memory. Everything is there when you need it (and even if you
don't need it :-) You can look at everything and check out the source
for everything. Don't like it? change it.

I'm only scratching the surface. The hardware has many many features
which make lisp work better. Each data item is 'tagged' with a 4-8 bit
tag which says what type of data it is. So, a function can say "hey, I
wanted an integer and you passed me a list". Also, the memory has magic
"invisible pointers" which allow for some amount of transparent
indirection/virtualization. And lots of support for garbage collection
which I won't go into.

It's a truely wonderful development machine. You can poke an object and
ask what it is and where is came from and pop up the source code. The
editor is (essentially) emacs. The network code is very, very smart.
An easy to use window system. Very little modality. Crisp b&w display.
Extremly active mouse. Command line completion. you name it. And it's
all lisp.

Even the microcode and PAL's where done in lisp. The PAL code is pretty
cool - a nice use of symbolic computing. At the time I think I was
using PALASM. Wish I'd had a lisp machine :-)

I'll make some quick snaps of my 3640 so you can get an idea. It's
basically the size of a small refrigerator. There is a backplane with
very large (like 2' x 2') cards packed with TTL logic. I think my
machine has about 5 Mwords of memory (drams where small then :-).

There are some very cool movies on the web showing the UI in action.

I think this works

  http://lispm.dyndns.org:8000/

Some folks (including myself) are working on various projects to run
microcode and macrocode of various lisp machines. The goal is to run
the environment on a pc. Nothing yet, but someday...

Also, you can buy a commericial emulator for the Symbolics machine which
runs on an Alpha. I believe it cost $18k (don't ask me why it's so
expensive). There are rumors of one coming out for the G4 (another 64
bit machine).

-brad
Received on Thu May 20 2004 - 12:45:45 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:37:11 BST