The programming languages behind "the mother of all demos"

On December 9, 1968, Dr. Douglas C. Engelbart and the Augmentation Research Center (ARC) at Stanford Research Institute staged a 90-minute public multimedia demonstration at the Fall Joint Computer Conference in San Francisco. It was the world debut of personal and interactive computing: for the first time, the public saw a computer mouse, which controlled a networked computer system to demonstrate hypertext linking, real-time text editing, multiple windows with flexible view control, cathode display tubes, and shared-screen teleconferencing.

To commemorate this famous event, commonly known as the mother of all demos, SRI held a 40th anniversary celebration at Stanford today. As a small tribute to the innovative ideas that made up the demo, it is befitting to mention some of the programming languages that were used by Engelbart's team. A few were mentioned in passing in the event today, making me realize that they are not that widely known.

The Tree Meta Language was used for describing translators, which were produced by the Tree Meta compiler-compiler. MOL940 ("Machine Oriented Language" for the SDS 940) was an Algol-like high level language for system programming which allowed the programmer to switch to machine-level coding where necessary. Alas (and ironically), I have not found the primary documents about these languages online. Section IV of Engelbart's Study for the development of Human Augmentation Techniques gives an account of the language and tools that were used in the project, and includes an example giving the metalanguage description for part of the Control Language. Figure 8 in in this document is a useful overview of the system and the compilers and compiler compilers used to build it. The tech report Development of a Multidisplay, Time-Shared Computer Facility and Computer-Augmented Management-System Research (only the abstract of which is online) also mentions "four Special-Purpose Languages (SPL's), for high-level specification of user control functions" which sound intriguing. The tech report specifying MOL 940 is also apparently not available online.

If I understood what Andries van Dam said, the Language for Systems Development (LSD) developed at Brown, which targeted OS/360 and was based on PL/I, was influenced by the work of Engelbart's team. They were also claiming to have built the first (or one of the first) cross-compiler.

When asked about prior work that influenced them, SNOBOL was mentioned as an important influence. The influence the demo had on programming languages was manifested by having Alan Kay's talk conclude the event (he did not mention Smalltalk once in his talk, by the way, but it was mentioned a couple of times earlier in the day).

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Challenge

Challenge: Explain (or decipher...) the Metalanguage Description from fig. 7 here.

Tree Meta (TREE-META)

I've been looking for documentation and source for Tree Meta (or TREE-META as it's authors called it) for years. I finally created a Wikipedia article for it.

http://en.wikipedia.org/wiki/TREE-META

And a blog post:

http://www.ifcx.org/wiki/Blog.html

My site also has a TREE-META page that includes some information about Stephen Carr, one of the principal developers.

Thanks

This for putting that page together,

Just out of curiosity, what evidence is there for the US Government classification of the technology? (Was it actually classified, or just considered 'sensitive')

Great News!

I don't know anything about that classification business. That edit was made by Damon Simms. Interestingly enough he was at UC Irvine, which is where I learned about TREE-META. I'm back at UCI now myself and may be able to dig up something there.

Most exciting thing is I googled TREE-META today and found Chilton has scanned and posted a TREE-META manual on their Atlas Computer history site!

http://www.chilton-computing.org.uk/acl/literature/manuals/tree-meta/contents.htm

I still would like to find the S. Carr report, as well as whatever manual I used at UCI. But getting this first manual is great, and has me thinking finding an implementation might eventually happen (I'm hoping for the UCSD p-System version).

Also came across this TREE-META in Python page, but there doesn't seem to be a download.

http://www.dython.org/dython/index.html

The Tree-Meta Wikipedia Article

I left a few comments in the discussion section. "zmaniac" might like to incorporate these, ask further questions, etc.

Cheers,

Alan

The 30th anniversary of "the mother of all demos"

I was reminded of this this week, and flashed back to my conversation with Englebart at the 30th anniversary celebration at Stanford, back when Condoleeza Rice was Chancellor of Stanford. I'd asked, as a question from the floor, at the Plenary event, what will happen when we shove 10^18 pixels into the World Wide Web, namely the current appearance of the Earth's surface at 1 centimeter resolution, and then send nanobots every where to self-replicate and scan every grain of sand and every blade of grass, putting multiples of 1 Shannon (my 1979 IEEE presentation "Quintillabit: Parameters of a Hyperlarge Database" where I designated 6.02 x 10^23 bits = 1 Shannon = 1 mole of bits) into the Web. He said: "Oh, yes. I call that The Great Whooooshhhh." The audience looked back and forth at me and him, as if wondering which of us was crazier...