Symbolics Lisp Machine demo Jan 2013
Kalman RetiRecommended by 5 HN commenters across 5 months, 2014–2024
demo · general · evergreen · 2014–2024 on HN
Symbolics developer Kalman Reti gives a short introductory demo of a Symbolics Lisp Machine running Genera in an emulator. It shows the context-aware command line, typed on-screen objects, and the live-editable system, including swapping in a C-compiled JPEG…
The go-to demo whenever HN discusses what Lisp machines were like and what modern shells and editors lack.
Up next
2 mo on HNLisp Editing in the 80s - Interlisp SEdit
thoughtupquick
Recommended 2× on HN · 2019–2021
8 mo on HN7 minutes of Pharo Smalltalk for Rubyists
Avdi Grimm
Recommended 5× on HN · 2017–2026
1 mo on HNSymbolicsTalk28June2012
Mike Lambert
Recommended 1× on HN · 2021–2024
2 mo on HNYour Brain Hallucinates Your Conscious Reality | Anil Seth | TED
TED
Recommended 2× on HN · 2017–2026
5 mo on HNgolden balls. the weirdest split or steal ever!
spinout3
Recommended 5× on HN · 2012–2025
4 mo on HNSYMBOLICS S-PACKAGES 3D GRAPHICS AND ANIMATION DEMO
Red Martian
Recommended 4× on HN · 2014–2026
2 mo on HNPhysics in Clojure - Colin Smith
ClojureTV
Recommended 2× on HN · 2019–2023
12 mo on HNWilliam Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
PapersWeLove
Recommended 11× on HN · 2017–2026
15 mo on HNAT&T Archives: Similiarities of Wave Behavior (Bonus Edition)
AT&T Tech Channel
Recommended 12× on HN · 2014–2026
14 mo on HNMicro Men - 720p (2009)
gimpymoo
Recommended 15× on HN · 2015–2026
11 mo on HNLight Years Ahead | The 1969 Apollo Guidance Computer
TNMoC
Recommended 11× on HN · 2021–2026
12 mo on HNMechanical Computer (All Parts) - Basic Mechanisms In Fire Control Computers
Excelsior10000
Recommended 13× on HN · 2014–2025
12 comments from Hacker News
See these demos for the kinds of interactive systems LISP enabled back in the day: ▶ this video link It makes working on VSCode today look like banging rocks together, let alone 30 years ago.
>My dream is to make everything visualizable at runtime. Check out demos of the old Lisp Machines, [1] is a brief overview demo, [2] links to a timestamp with a view of some simple diagramming, but I’ve seen TI-Symbolics beasts routinely display complex relationships in Lisp code on their massive (for the time) bitmapped screens. The limitation was the end user managing the visualization complexity. With open source llvm, clang and similar making available abstract syntax trees and even semantic analysis and type checking results, LLM’s assisting with decompiling binary blobs, and modern hardware (goggles, graphics cards, and so on), I sometimes wonder how close we can come to reproducing that aspect of the Lisp Machine experience on open source operating systems. [1] ▶ this video [2] link
If you are into Lisp Machines, this talk on Symbolics by Kalman Reti (who worked there) is worth watching (1h): link If you only have 15 minutes, he gives another demo here: ▶ this video He has another video where he does some actual hacking (smooth scrolling of sheet music for display while playing an instrument): link
There's this recent video showing a little of what the Pharo Smalltalk environment is like: link The video was made by a Ruby programmer, rather than an experience Smalltalker, so it's more a newbie showing you cool things he's discovered, rather than an expert showing the power of the system. On the other hand, there's this one: ▶ this video That one is an expert, Kalman Reti, showing some of what it's like to work with a Symbolics Lisp Machine. (It's not a real Lisp machine; they're all at least thirty years old now; this is an emulator running the old Symbolics OS on Linux). Go to YouTube and search for Rainer Joswig and you'll find a few video demos of Lisp Machines and MCL and so forth. Finally, here are a few images from about eighteen years ago, also from Rainer. They show various views of the Macintosh Common Lisp and SK8 environments. It's not an experienced user showing you around, but at least you can get some idea what the environments looked like: link
Since he did AI work in the 50's, probably a lot of his work was written in LISP or IPL, which had many of the concepts that LISP later used. Most of his high-profile inventions (Computer mice, Hypertext, Interactive Computers) were first commercialized on LISP machines in the 80s. LISP Machines also pioneered some other concepts such as windowing ystems, graphic rendering, modern networking, garbage collection, etc. There is a fun little demo on youtube here; ▶ this video . That shows off a LISP machine roughly as it was written in the 80s/90s.
I've ran chsh on top of a (virtual) Guix(SD) installation. It was rather nice but is still _not_ a lisp machine: ▶ this video
The key thing about those type of systems was the ability to reach down into the system and edit the code of the system currently in operation. Here's a demonstration of Symbolics Open Genera (TM) 2.0, demonstrated running in a virtual machine. It is noted by the author of the video in the first minute or so that even in emulation, it is much faster than the original machines. - ▶ this video Oberon also had a similar attribute, in that they kept the names of functions to operate on objects visible. The same was true of the Canon Cat, Hypercard, Ted Nelson's Xanadu project, Smalltalk, and a number of other early computing systems. The main feature common to all of these systems is that they all preserve context . In Genera, Oberon, Canon Cat, Hypercard, and SmallTalk the source was always available. (as far as I know). In Xanadu, the main functionality of the web was present, but it wouldn't allow the broken links (and lost context) that now plague the web. I think a future platform could take code in a number of languages, compile it to an abstract syntax tree, but preserve the context required to recreate the source. In fact, it's reasonable that you could import a routine in a language you aren't familiar with, and reverse the compilation to get it expressed in an equivalent (but less elegant) form in your language of choice, along with the original comments. There's nothing stopping an open source project from taking elements of these existing systems and moving forward from th
You are aware that Lisp machines understood several different flavors of Lisp? The Symbolics ones understood Zetalisp and Common Lisp at least. Were they on the market today they could be convinced to run Clojure and Scheme as well. There are a few old-timers developing Common Lisp applications to run on modern hardware, using Symbolics hardware. In fact, Symbolics shipped compilers for other non-Lisp programming languages, including C and Ada. These interoperated smoothly with Lisp code, much more so than they do under Unix. In this demo, Kalman Reti compiles a JPEG decoder written in C, and replaces the Lisp JPEG decoder that came with the system with it, yielding a performance boost: ▶ this video
The animations in this post remind me of nothing more than a Symbolics LISP Machine: ▶ this video which also had semantically driven clickable data structures one could use to build up a command line invocation. In about 1982.
There are 30(!) comments on HN linking to this video, including discussions of Bret Victor's "Learnable programming", using Lisp in production from last year, comparisons with Smalltalk, a thread with examples of beautiful software, and more: ▶ this video
Doesn’t have the beautiful Display Postscript/LeX-esque typography that I want, and less said about Lots of Irritating Silly Parentheses the better, but even 1980s tech was doing it better: ▶ this video I think there are lessons to be had from the likes of Smalltalk and Logo too. Highly expressive without insane levels of cryptic inconsistent punctuation rules and UX man-traps.
The terminal is exactly an example of an app-centric workflow and why it is easier to build and/or easier to use than an API focused one. If you want to see a no-apps workflow, something like the Genera LISP OS was probably much closer[0]. People choose to use apps like ls, cat, less, echo, touch, find instead of using the FILE* object directly with readdir(), stat(), read(), write(), open(), creat() etc. All of the apps are designed to have human-readable output first, lots of options for controlling that output to make it as readable as possible etc. However, none of them exposes a rich model for its output that would make it possible to easily integrate it into more complex workflows. Instead, we rely on yet other apps, like sed, grep, xargs and essentially copy-pasting text between these apps (this is all that pipes really are, essentially). This becomes even more obvious when you use stuff like gcc or gdb, which have extremely rich and potentially useful layers of representation that they refuse to expose at all, even as APIs - only text is allowed in the interaction. Hell, the MS Office suite is a better example of a no-apps workflow, since each of the Office UIs has a deep understanding of the data produced by the others, and you can combine these in meaningful ways - much more so than terminal apps (for example, Word can show a portion of a spreadsheet without you having to guess at what contents it might have and how to parse it, like you would if you want to expose