Glossary
The names “Medley,” “Interlisp-D,” “Interlisp.org,” “Common Lisp,” etc. are often used in confusing ways. We’re talking about a lot of different things that evolved over decades. These are cemented in by usage in different publications over time. We hope this glossary of terms will help.
For general computer terminology and lore see The Hacker’s Dictionary aka Jargon File.
Vocabulary and relationships
- Advice (Advising)
- A facility for modifying an existing function without editing its definition by wrapping it with code that runs before or after the function and can inspect or change its arguments or return value. Advice can be added to and removed from a function independently, so a programmer can instrument or adapt code temporarily and leave the original definition intact. Also called advising.
- AltoLisp
- An experimental microcoded implementation of Interlisp on an Alto personal computer.
- Break package
- The Interlisp subsystem that comprises the debugger (also known as break window) and other debugging facilities. Named after the
BREAKfunction and breakpoints. - Briefing Blurb
- One of the several documents that introduced Xerox PARC newcomers to the computing and network environment of the Computer Science Laboratory. Written in an upbeat style, their titles followed a pattern that included the expression “Briefing Blurb” such as The Alto-Dolphin-Dorado Briefing Blurb: Exploring the Ethernet with Mouse and Keyboard and The Briefing Blurb: Exploring the Ethernet with Mouse and Keyboard.
- Carol, Fugue, Harmony, Intermezzo, Koto, Lyric, Medley
- Named releases of Interlisp-D. All are obsolete except Medley.
- Common Lisp
- The subject of a 10-year standards process to converge multiple dialects of the Lisp language. Strong influences from many Lisp dialects, including Interlisp.
- Common Lisp the Language
- Book by Guy Steele with two editions:
- CLtL1 – edition 1, 465 pages
- CLtL2 – second edition, 1029 pages
- Common Lisp dpANS
- The ANSI Standard for Common Lisp.
Starting with the Lyric release of Interlisp-D and then the Medley release, the implementation of Medley included implementations of Common Lisp (CLtL 1) as well as the Interlisp dialect in a single development environment; this was made possible by using the (Common Lisp) “package” feature to allow both dialects to be intermixed.
- Dfasl
- A compiled form of Medley Interlisp files with the extension “.dfasl”.
- Display
- Denotes a program or system with a Graphical User Interface or a full screen character interface, as opposed to a line oriented interface like a teletype. In expressions like “display oriented editor” or “display editor”.
- DLISP
- By Warren Teitelman: a first attempt at building a “Display” (GUI) with Interlisp running on MAXC (a PDP-10 clone) connected by Ethernet to a Xerox Alto acting as a graphics terminal.
- Dorado Lisp
- The reimplementation of the AltoLisp microcode on the Dorado – a research prototype.
- DWIM
- Do-What-I-Mean. An Interlisp error-recovery facility that intercepts errors such as undefined functions, unset variables, and misspellings, using heuristics and context-sensitive spelling lists to suggest or apply corrections and continue execution. When a correction is uncertain, DWIM can ask the user to approve it; when the user is away, it can apply a default after a delay. DWIM can also repair some structural errors, such as a number typed in place of a parenthesis, so the computation can proceed without restarting.
- Fugue
- An obsolete named release of Interlisp-D.
- Harmony
- An obsolete named release of Interlisp-D.
- History package
- An Interlisp facility that records the commands and expressions entered during a session, together with messages displayed during their execution, so they can be reviewed, replayed with substitutions, or undone. Each recorded event also keeps the information needed to reverse its side effects, which makes the history list the basis for UNDO. The history can be searched and selectively replayed, so a user can reuse or correct an earlier operation without retyping it.
- Intermezzo
- An obsolete named release of Interlisp-D.
- Interlisp
- Both a language and, in some cases, the implementation of that language. Usually used with some other wording or refinement.
- A GitHub “organization” with ~20 repositories, see https://github.com/Interlisp
- Interlisp: The Language and its usage
- A book by Steve Kaisler which describes Interlisp of the 1970s & 80s.
- Interlisp.org
- The project’s Internet domain name, used for its websites and email addresses.
- https://interlisp.org – the address of the main web site
- https://online.interlisp.org – the address of a service that lets you run Medley
- info@interlisp.org - the project’s general information email address
- Interlisp-10
- The first implementation of Interlisp for the Digital Equipment Corporation (DEC) PDP-10 / Tenex.
- Interlisp-360
- Implemention of Interlisp for the IBM-360.
- Interlisp-D
- What Dorado Lisp became. The D stood for both “Display” and “D-machine”. An implementation of
- Interlisp the language
- The Interlisp programming tools
- A Graphical User interface to Interlisp programming development
- A large number of tools, utilities, games, screen-savers
- A Lisp-based operating system for D-machines which, when coupled with microcode implementation of a Virtual Machine, allowed the D-machines to operate as a personal workstation. Each D-machine had its own microcode with different configurations and micro-instructions.
- Interlisp-VAX
- Implementation of Interlisp for Digital Equipment Corporation VAX systems.
- Koto
- An obsolete named release of Interlisp-D.
- Lcom
- Used as a file ending, xxx.lcom, for compiled Medley files.
- Lyric
- An obsolete named release of Interlisp-D.
- Medley
- The final named release of Interlisp-D.
- Medley 1.0, Medley 2.01, Medley 3.5 numbered releases of Interlisp-D
- At some point the name Interlisp-D was retired and Medley used to name the software.
- Maiko
- An implementation of the functions of the D-machine microcode, but written in C for the Sun Microsystems SPARC processor workstation, initially developed by Fuji Xerox. Subsequently ported to little-endian processors and other operating systems.
- Package
- The term Package has several different meanings depending on the context:
- Informally, a collection of utilities or submodule in Interlisp (the “break package”, q.v.; the “file package”, a facility for managing code changes; the “record package”, a record data type; and so on)
- A feature of Commmon Lisp symbol support; the package system allows the combining of Interlisp symbols (written with
IL:prefix) and Common Lisp symbols (written with aLISP:prefix).
- Prettyprint
- A Lisp utility that prints programs with indentation and line breaks that reflect their list structure, making code easier to read and debug. Because Lisp programs are lists, a prettyprinter can lay out nested expressions according to their depth and width instead of printing them as one long line. It is used both to display code and to produce readable listings or files.
- SDL
- Structured Design Language.
- Spaghetti stack
- An Interlisp execution stack that remains available as a structured list rather than a contiguous array, so each frame can still be reached through the list structure. This lets programs and debugging tools search frames, inspect values in caller contexts, and perform non-local returns. Because the stack can be traversed and its frames examined, it supports debugging, error recovery, and control operations that would be difficult with a conventional call stack.
- Structure editor
- An editor that operates directly on a program’s list structure rather than its printed text. Because Lisp programs are lists, commands can move through and modify a function’s tree in place without leaving Lisp. Editing commands select list elements, descend into sublists, and insert, delete, or replace structures, so the edit changes the program itself rather than a separate text file. This allows a running program to be inspected, modified, and re-evaluated in the same environment.
- Sysout
- A file containing the saved state of Interlisp virtual memory.
- Trace
- A Lisp debugging facility that redefines a function so that selected information, by default its arguments and return value, is printed when the function is entered and exited. Tracing can be applied to one function or several and remains in effect until the function is untraced. It gives a running account of calls and results without requiring the programmer to stop the program or insert print statements by hand.
- UNDO
- A command in the Interlisp Programmer’s Assistant that reverses the side effects of operations recorded on its history list. It supports selective undo—reversing an earlier operation without undoing later ones—as well as undoing assignments and whole edit sessions. A user can also make a user-defined function undoable by recording the information needed to reverse its effects. Undoing an operation can itself be undone, and related commands can redo or reuse recorded events.
- X11
- The X Window System.
Organizations
- BBN
- Bolt, Beranek, and Newman , a Cambridge, Mass. consulting firm which sponsored the creation of BBN Lisp, Interlisp’s immediate ancestor, as well as the Tenex operating system.
- Xerox PARC or just PARC
- Palo Alto Research Center, which continued in collaboration with BBN on (renamed) Interlisp. PARC developed the Alto and Dorado. Now part of SRI International.
- SRI International
- A non-profit scientific R & D institute, headquertered in Menlo Park, California.
- Xerox Electro-Optical Systems (XEOS)
- A former Xerox division supporting government customers.
- Xerox Artificial Intelligence Systems (XAIS)
- The former Xerox division working to commercialize Xerox workstations running Interlisp-D.
- Rank Xerox
- Xerox’s European subsidiary, a joint venture of Xerox Corp. and the Rank Organization, which sold Interlisp-D workstations in Europe.
- Fuji Xerox
- Xerox’s Japanese subsidiary, owned jointly by Rank Xerox and Fujifilm Corp., responsible for selling and supporting Interlisp-D systems in Japan.
- Envos
- Company founded in 198x to take on the Lisp business from Xerox. Closed within 10 months and folded back into Xerox.
- Venue
- Company founded by John Sybalsky, former Xerox and Envos employee, which obtained a license to create and distribute derivative works of Maiko and Medley.
- Medley Interlisp Project
- Began late 2010’s with Nick Briggs getting Maiko to run on macOS. The group expanded and began holding weekly online meetings in 2020. Subsequently ported Maiko (and therefore Medley) to Linux, Windows, and other operating system. Maintains a mailing list for developers and interested users, sponsors the maintenance of an exhaustive bibliography and the very website where you’re reading this.
- InterlispOrg
- A California-registered non-profit organization (DBA Interlisp.org) Established August 2021. 501c3 EIN 87-2528093 California registered charity CT0278267. The Board of Directors consists of Larry Masinter, President; Ron Kaplan, Treasurer; and Herb Jellinek, Secretary.