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...

RIP Doug Engelbart

Doug Engelbart (1925-2013) passed away Tuesday. His vision lives on.

Bret Victor wrote a few

Bret Victor wrote a few words about this, it is a very good read.

Have we caught up to the 70s

Have we caught up to the 70s yet?

AFAIK the 1970s have been

AFAIK the 1970s have been overall far more critical with respect to technological determinism and market totalitarianism, which are our current mainstream ideologies. It was a period of broken optimism which gave advantage to secessionist movements and experimentation with "alternative" life styles - at least so was it perceived. A big loss of trust into master plans and great visionaries whose worlds we will all inhabit soon. So maybe we should rather attempt to go back to the 1960s when we have a desire for a smooth simulacrum which never breaks the flow of experience and never incurs a moment of self-reflection which hinders our operationality?

Heh, you may be right in

Heh, you may be right in that I have my decade wrong :D. I was going off the date for Doug Engelbart's demo in 1968, from which I guessed they would have been operating with a coherent system into the early 70s.

That Bret Victor article is being misunderstood

Ironic, considering he's trying to address an earlier misunderstanding. I don't think he's claiming that we're worse off than the 70's when it comes to collaborative intellectual spaces. There's much we have today that makes collaboration easier in ways nobody could have anticipated then. Plenty of apps provide multiple cursors, for example.

His complaint is rather that the intent of collaboration has gotten diluted, and a lot of the original design coherence has been lost.

While Alan Kay was right to remind us of the past, at this point I think we're over-compensatiing and turning it into a fetish. (Sorry, your comment is reasonable in isolation, but this topic triggers my pet peeves.)