

Xerox Alto Source Code - bane
http://www.computerhistory.org/_static/atchm/xerox-alto-source-code/

======
Animats
I've used and programmed an Alto, but only with the Mesa/Bravo environment,
not the Smalltalk environment. For some political reason, the Smalltalk
environment wasn't made available to Stanford.

The computer itself was a 16-bit word addressed microcoded minicomputer with
the microcode in ROM, driving a Signetics ALU. (Most minicomputers of the era
were 16-bit word addressed machines.) The portrait-oriented page sized display
was pure Xerox PARC; they even made the CRT. There was a mouse, of course, and
the original Ethernet interface.

Mesa is a relatively straightforward language. The most unusual feature is
that the input to and output from each function call is a tuple of arguments.
This input/output symmetry was useful, and has seldom been seen in other
languages.

The Bravo text editor was the first WYSIWYG editor with fonts. Amusingly, this
was also the programmer's editor. So Mesa programs were written with
proportional spacing and boldface where desired. The compiler didn't see any
of the formatting. The Bravo file representation was plain text, followed by a
control-Z as an EOF, followed by the formatting information. The compiler just
stopped at the control-Z.

~~~
pjmlp
How has Mesa as systems programming language? Did you also used Cedar?

From my own experience with Oberon derived systems, and all the Xerox PARC
documentation that I have from Mesa/Cedar, I became convinced that we really
lost with UNIX model becoming widespread into the industry instead of what
Xerox was researching.

~~~
Animats
I only wrote one graphics application in Mesa, as a student at Stanford. I
never used Cedar or SafeMesa or any of the Alto successors, although I visited
PARC a few times and saw them used.

Xerox had to invent Mesa because they were previously stuck writing BCPL, a
predecessor to C sometimes known as the British Cruddy Programming Language.

Xerox's world model was closed systems with a few beautiful applications
written by experts. End users were not to be allowed access to the guts of the
software. The realization of this was the Xerox Star, which was a nice, and
very expensive, world processor with a few additional applications. (Visualize
a system that runs Microsoft Office and nothing else.) The idea that ordinary
people would write application programs was completely alien to Xerox. Their
market was secretaries.

~~~
ams6110
_Visualize a system that runs Microsoft Office and nothing else_

So 95% of corportate desktops? (I guess if you include Outlook and IE in a
wider definition of "Office")

------
t1m
I had access to either an Alto or a Dorado during my co-op terms at
Environment Canada (the weather service) back in the late 80s. I had a keen
interest in OO at the time, but I can't remember this machine having a
Smalltalk. Whenever I was able to access it, I spent time amusing myself
hacking LOOPS (pre-cursor to CLOS - OO Lisp).

I also had access to a Mac, had an HP-9000 unix workstation (running X
Windows) sitting on/under my desk, and had some exposure to Smalltalk-80 at
the time. What blew me away was how mature and strange the Alto was; it was so
obviously advanced, but was so difficult to understand. At that time, it was
an 'old' machine, but somehow seemed like it was sent from the future.

~~~
pjmlp
> At that time, it was an 'old' machine, but somehow seemed like it was sent
> from the future.

This is why when I combine my own experience with Smalltalk and Oberon,
coupled with all the Xerox PARC documentation that I can get my hands on, I
feel sad that the industry didn't adopt any of the Xerox PARC paradigms.

So here we are, jumping of joy for something like Swift Playground or Bret
Victor's demos, when everyone could have had something like that for years
now.

~~~
ams6110
This was how I felt about NeXT computers, even after they were obsolete in
pure hardware terms they were still YEARS ahead in software.

~~~
pjmlp
My first close contact with Objective-C was in 1998, as I had to port an
particle visualization framework from NeXT to Windows 95/C++, as my final
project.

The teacher had a dead Cube on his office and NeXT was considered dead by the
department.

I tried long to replicate some of the experience with WindowMaker/AfterStep
and GNUStep but it never felt like what I could see from the NeXT manuals.

------
primis
I love the fact the Computer History Museum is keeping this source alive. But
without an Alto Emulator, it's almost worthless. Kinda sad how much technology
is dead simply because the hardware is gone to run it.

~~~
bane
Not an emulator but:
[http://toastytech.com/guis/salto.html](http://toastytech.com/guis/salto.html)

Honestly, the release of this might stir somebody to get one going. It would
be a weird beast to emulate though.

~~~
lloeki
Probably not as much as a Setun? This is the only ternary computer emulator I
could find:
[http://tunguska.sourceforge.net/](http://tunguska.sourceforge.net/)

------
smaili
Direct link:
[http://xeroxalto.computerhistory.org/index.html](http://xeroxalto.computerhistory.org/index.html)

------
bane
Anybody interested in emulating this system might be interested in this
[http://bitsavers.informatik.uni-
stuttgart.de/pdf/xerox/alto/...](http://bitsavers.informatik.uni-
stuttgart.de/pdf/xerox/alto/Alto_Hardware_Manual_Aug76.pdf)

