Interlisp

Last updated
Interlisp
Paradigms Multiparadigm: functional, procedural, object-oriented, declarative, reflective, meta
Family Lisp
First appeared1968;55 years ago (1968)
Final release
Medley 2.0 / February 1992;31 years ago (1992-02)
Implementation language C
Platform PDP-10, MOS Technology 6502, Atari 8-bit; Xerox 1100, 1108, 1109, 1186, 1132
OS TENEX, TOPS-20
License Proprietary
Influenced by
Lisp, BBN LISP
Influenced
Lisp Machine Lisp

Interlisp (also seen with a variety of capitalizations) is a programming environment built around a version of the programming language Lisp. Interlisp development began in 1966 at Bolt, Beranek and Newman (renamed BBN Technologies) in Cambridge, Massachusetts with Lisp implemented for the Digital Equipment Corporation (DEC) PDP-1 computer by Danny Bobrow and D. L. Murphy. In 1970, Alice K. Hartley implemented BBN LISP, which ran on PDP-10 machines running the operating system TENEX (renamed TOPS-20). In 1973, [1] when Danny Bobrow, Warren Teitelman and Ronald Kaplan moved from BBN to the Xerox Palo Alto Research Center (PARC), it was renamed Interlisp. Interlisp became a popular Lisp development tool for artificial intelligence (AI) researchers at Stanford University and elsewhere in the community of the Defense Advanced Research Projects Agency (DARPA). Interlisp was notable for integrating interactive development tools into an integrated development environment (IDE), such as a debugger, an automatic correction tool for simple errors (via do what I mean (DWIM) software design), [2] and analysis tools.

Contents

Adaptations

At Xerox PARC, an early attempt was made to define a virtual machine to facilitate porting, termed the Interlisp virtual machine. However, it was not useful as a basis for porting.

Peter Deutsch defined a byte-coded instruction set for Interlisp, and implemented it as a microcode emulator for the Xerox Alto. This was then ported to a series of workstation designs produced by Xerox for internal use and for commercial exploitation, including on the Xerox 1100 (Dolphin), 1108 (Dandelion), 1109 (the floating-point enabled Dandetiger), 1186 (Daybreak), and 1132 (Dorado). Interlisp implementations for these were known collectively as Interlisp-D. Commercially, these were sold as Lisp machines and branded as Xerox AI Workstations when Larry Masinter was the chief scientist of that group. The same designs, but with different software, were also sold under different names (e.g., when running the Viewpoint system, the 1186 Daybreak was sold as the Xerox 6085.) Releases of Interlisp-D were named according to a musical theme, which ended with Koto, Lyric, and Medley. Later versions included an implementation of pre-American National Standards Institute (ANSI) Common Lisp, named Xerox Common Lisp. LOOPS, the object system for Interlisp-D, became, along with Symbolics' Flavors system, the basis for the Common Lisp Object System (CLOS).

In 1974, DARPA awarded a contract to the University of California, San Diego (UCSD) to implement Interlisp on the Burroughs B6700. The motivation was the larger virtual memory addressing space afforded by the B6700 architecture compared to the PDP-10. However, by the time the software was released (1975), the PDP-10's address space had been increased, and Interlisp-10 remained the standard of the day for AI research. The implementors were Bill Gord and Stan Sieler, with guidance from Daniel Bobrow, and under the overall management of Dr. Ken Bowles. UCSD Interlisp included a compiler which emitted "p-code", which was could be intermixed with standard LISP code during interpretation. This p-code appears to have preceded UCSD Pascal p-code by a year or two.

The PDP-10 version of Interlisp became Interlisp-10; BBN had an internal project to build Interlisp-Jericho and there was a 1982 port to Berkeley Software Distribution (BSD) Unix on the VAX by Stanford University, Information Sciences Institute (ISI) and Xerox PARC, called Interlisp-VAX. [3]

In 1981, Warren Teitelman and Larry Masinter published a paper on Interlisp in IEEE Computer providing an overview of the system and its design philosophy, setting starts used for the platform. [4]

Also in 1981, a variant for the MOS Technology 6502 processor, INTER-LISP/65, was released by Datasoft for the Atari 800. In 1985 to 1987, a team from Fuji Xerox developed an implementation of the microcoded bytecode interpreter in the language C, and, together with Xerox AI Systems (XAIS) in Sunnyvale, California, completed the port of the environment and emulator to the Sun Microsystems SPARC 4 architecture. In 1987, XAIS was spun off into Envos Corporation, which failed almost immediately.

Interlisp-D release timeline:

19551960196519701975198019851990199520002005201020152020
 LISP 1, 1.5, LISP 2(abandoned)
  Maclisp
  Interlisp
  MDL
  Lisp Machine Lisp
  Scheme  R5RS R6RS R7RS small
  NIL
  ZIL (Zork Implementation Language)
  Franz Lisp
  Common Lisp  ANSI standard
  Le Lisp
  MIT Scheme
  T
  Chez Scheme
  Emacs Lisp
  AutoLISP
  PicoLisp
  Gambit
  EuLisp
  ISLISP
  OpenLisp
  PLT Scheme   Racket
  GNU Guile
  Visual LISP
  Clojure
  Arc
  LFE
  Hy

In 1992, an Association for Computing Machinery (ACM) Software System Award recognized the team of Daniel G. Bobrow, Richard R. Burton, L. Peter Deutsch, Ronald Kaplan, Larry Masinter, Warren Teitelman for their pioneering work on Interlisp.

Revitalization

The Medley Interlisp source code and the source code for the virtual machine emulator have both been open-sourced by the Medley Interlisp Project. The system runs on modern hardware/operating systems.

See also

Related Research Articles

<span class="mw-page-title-main">Lisp (programming language)</span> Programming language family

Lisp is a family of programming languages with a long history and a distinctive, fully parenthesized prefix notation. Originally specified in 1960, Lisp is the second-oldest high-level programming language still in common use, after Fortran. Lisp has changed since its early days, and many dialects have existed over its history. Today, the best-known general-purpose Lisp dialects are Common Lisp, Scheme, Racket and Clojure.

<span class="mw-page-title-main">Lisp machine</span> Computer specialized in running Lisp

Lisp machines are general-purpose computers designed to efficiently run Lisp as their main software and programming language, usually via hardware support. They are an example of a high-level language computer architecture, and in a sense, they were the first commercial single-user workstations. Despite being modest in number Lisp machines commercially pioneered many now-commonplace technologies, including effective garbage collection, laser printing, windowing systems, computer mice, high-resolution bit-mapped raster graphics, computer graphic rendering, and networking innovations such as Chaosnet. Several firms built and sold Lisp machines in the 1980s: Symbolics, Lisp Machines Incorporated, Texas Instruments, and Xerox. The operating systems were written in Lisp Machine Lisp, Interlisp (Xerox), and later partly in Common Lisp.

<span class="mw-page-title-main">PDP-10</span> 36-bit computer by Digital (1966–1983)

Digital Equipment Corporation (DEC)'s PDP-10, later marketed as the DECsystem-10, is a mainframe computer family manufactured beginning in 1966 and discontinued in 1983. 1970s models and beyond were marketed under the DECsystem-10 name, especially as the TOPS-10 operating system became widely used.

| name = Symbolics, Inc. | type = Public | logo = Symbolics logo color.svg | fate = Bankrupted | successor = Privately-held Symbolics, Inc. | foundation = April 9, 1980
Cambridge, Massachusetts, U.S. | defunct = May 7, 1996 | founder = Russell Noftsker | location = Concord, Massachusetts, U.S. | industry = Computer systems
Computer software | products = Servers
Workstations
Storage
Services | website = www.symbolics-dks.com }}

<span class="mw-page-title-main">VAX</span> Line of computers sold by Digital Equipment Corporation

VAX is a series of computers featuring a 32-bit instruction set architecture (ISA) and virtual memory that was developed and sold by Digital Equipment Corporation (DEC) in the late 20th century. The VAX-11/780, introduced October 25, 1977, was the first of a range of popular and influential computers implementing the VAX ISA. The VAX family was a huge success for DEC – over 100 models were introduced over the lifetime of the design, with the last members arriving in the early 1990s. The VAX was succeeded by the DEC Alpha, which included several features from VAX machines to make porting from the VAX easier.

<span class="mw-page-title-main">Xerox Star</span> Early GUI-based computer workstation from Xerox

The Xerox Star workstation, officially named Xerox 8010 Information System, is the first commercial personal computer to incorporate technologies that have since become standard in personal computers, including a bitmapped display, a window-based graphical user interface, icons, folders, mouse (two-button), Ethernet networking, file servers, print servers, and e-mail.

In aspect and functional programming, advice describes a class of functions which modify other functions when the latter are run; it is a certain function, method or procedure that is to be applied at a given join point of a program.

DWIM computer systems attempt to anticipate what users intend to do, correcting trivial errors automatically rather than blindly executing users' explicit but potentially incorrect input.

<span class="mw-page-title-main">Franz Lisp</span> Lisp programming language system

In computer programming, Franz Lisp is a discontinued Lisp programming language system written at the University of California, Berkeley by Professor Richard Fateman and several students, based largely on Maclisp and distributed with the Berkeley Software Distribution (BSD) for the Digital Equipment Corporation (DEC) VAX minicomputer. Piggybacking on the popularity of the BSD package, Franz Lisp was probably the most widely distributed and used Lisp system of the 1970s and 1980s.

BBN LISP was a dialect of the Lisp programming language by Bolt, Beranek and Newman Inc. in Cambridge, Massachusetts. It was based on L. Peter Deutsch's implementation of Lisp for the PDP-1, which was developed from 1960 to 1964. Over time the language was expanded until it became its own separate dialect in 1966.

Daniel L. Murphy is an American computer scientist notable for his involvement in the development of TECO, the operating systems TENEX and TOPS-20, and email.

New Implementation of LISP (NIL) is a programming language, a dialect of the language Lisp, developed at the Massachusetts Institute of Technology (MIT) during the 1970s, and intended to be the successor to the language Maclisp. It is a 32-bit implementation, and was in part a response to Digital Equipment Corporation's (DEC) VAX computer. The project was headed by Jon L White, with a stated goal of maintaining compatibility with MacLisp while fixing many of its problems.

CommonLoops is an early programming language which extended Common Lisp to include Object-oriented programming functionality and is a dynamic object system which differs from the OOP facilities found in static languages such as C++ or Java. Like New Flavors, CommonLoops supported multiple inheritance, generic functions and method combination. CommonLoops also supported multi-methods and made use of metaobjects. CommonLoops and New Flavors were the primary ancestors of CLOS. CommonLoops was supported by a portable implementation known as Portable CommonLoops (PCL) which ran on all Common Lisp implementations of the day.

Daniel Gureasko Bobrow was an American computer scientist who created an oft-cited artificial intelligence program STUDENT, with which he earned his PhD., worked at BBN Technologies (BBN), then was a Research Fellow in the Intelligent Systems Laboratory of the Palo Alto Research Center.

Warren Teitelman was an American computer scientist known for his work on programming environments and the invention and first implementation of concepts including Undo / Redo, spelling correction, advising, online help, and DWIM (Do What I Mean).

TENEX is an operating system developed in 1969 by BBN for the PDP-10, which later formed the basis for Digital Equipment Corporation's TOPS-20 operating system.

<span class="mw-page-title-main">Alice K. Hartley</span> American computer scientist (1937-2017)

Alice Hartley (1937-2017) was an American computer scientist and business woman. Hartley worked on several dialects of Lisp, implementing multiple parts of Interlisp, maintaining Macintosh Common Lisp, and developing concepts in computer science and programming language design still in use today.

Larry Melvin Masinter is an early internet pioneer and ACM Fellow. After attending Stanford University, he became a Principal Scientist of Xerox Artificial Intelligence Systems and author or coauthor of 26 of the Internet Engineering Task Force's Requests for Comments.

Richard R. Burton is an American computer scientist at Acuitus, who previously worked at Bolt Beranek and Newman, and Xerox PARC. A charter fellow of the ACM, he was awarded their Software System Award in 1994 for his contributions to Interlisp.

References

  1. "Interlisp Reference Manual" (PDF). 1993.
  2. Teitelman, Warren (April 1972). ""Do What I Mean": the programmer's assistant". Computers and Automation: 8–11.
  3. Masinter, Larry M. (1981). Interlisp-VAX: A Report (PDF) (Report). Stanford University.
  4. Teitelman, Warren; Masinter, Larry M. (April 1981). "The Interlisp Programming Environment" (PDF). IEEE Computer. 14 (4): 25–33. doi:10.1109/C-M.1981.220410. S2CID   13447494.
  5. "Lisp FAQ, Commercial Common Lisp Implementations".

Publications