Franz Lisp
Encyclopedia
In computer programming
Computer programming
Computer programming is the process of designing, writing, testing, debugging, and maintaining the source code of computer programs. This source code is written in one or more programming languages. The purpose of programming is to create a program that performs specific operations or exhibits a...

, Franz Lisp was a Lisp
Lisp programming language
Lisp is a family of computer programming languages with a long history and a distinctive, fully parenthesized syntax. Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today; only Fortran is older...

 system written at UC Berkeley by the students of Professor Richard J. Fateman
Richard Fateman
Richard J. Fateman is a professor emeritus of computer science at the University of California, Berkeley.He received a BS in Physics and Mathematics from Union College in 1966, and a Ph.D. in Applied Mathematics from Harvard University in 1971. He was a major contributor to the Macsyma computer...

, based largely on Maclisp
Maclisp
MACLISP is a dialect of the Lisp programming language. It originated at MIT's Project MAC in the late 1960s and was based on Lisp 1.5. Richard Greenblatt was the main developer of the original codebase for the PDP-6; Jonl White was responsible for its later maintenance and development...

 and distributed with the Berkeley Software Distribution
Berkeley Software Distribution
Berkeley Software Distribution is a Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995...

 (BSD) for the Digital Equipment Corp (DEC) VAX
VAX
VAX was an instruction set architecture developed by Digital Equipment Corporation in the mid-1970s. A 32-bit complex instruction set computer ISA, it was designed to extend or replace DEC's various Programmed Data Processor ISAs...

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

It was written specifically to be a host for running the Macsyma
Macsyma
Macsyma is a computer algebra system that was originally developed from 1968 to 1982 at MIT as part of Project MAC and later marketed commercially...

 computer algebra system on VAX. The project was started at the end of 1978 shortly after UC Berkeley took delivery of their first VAX 11/780 (named Ernie CoVax, the first of many systems with pun names at UCB). Franz Lisp was available free of charge to educational sites, and was also distributed on Eunice
Eunice
Eunice is a feminine given name, from the Greek Εὐνίκη, Euníkē, from "eu", good, and "níkē", victory. As an English name , it was first used after the Protestant Reformation.- People :* Eunice, mother of Saint Timothy...

, a Berkeley UNIX
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 emulator
Emulator
In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...

 that ran on VAX/VMS.

History

At the time of Franz Lisp's creation, the Macsyma computer algebra system ran principally on a DEC
Digital Equipment Corporation
Digital Equipment Corporation was a major American company in the computer industry and a leading vendor of computer systems, software and peripherals from the 1960s to the 1990s...

 PDP-10
PDP-10
The PDP-10 was a mainframe computer family manufactured by Digital Equipment Corporation from the late 1960s on; the name stands for "Programmed Data Processor model 10". The first model was delivered in 1966...

. This computer's limited address space caused difficulties. Attempted remedies included ports of Maclisp to Multics
Multics
Multics was an influential early time-sharing operating system. The project was started in 1964 in Cambridge, Massachusetts...

 or Lisp Machines
Lisp machine
Lisp machines were general-purpose computers designed to efficiently run Lisp as their main software language. In a sense, they were the first commercial single-user workstations...

, but even if successful these would only be solutions for MIT as these machines were expensive and not commonly available. Franz Lisp was the first example of a framework where large Lisp
Lisp programming language
Lisp is a family of computer programming languages with a long history and a distinctive, fully parenthesized syntax. Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today; only Fortran is older...

 programs could be run outside the Lisp Machine
Lisp machine
Lisp machines were general-purpose computers designed to efficiently run Lisp as their main software language. In a sense, they were the first commercial single-user workstations...

 environment—at the time, Macsyma was considered a very large program. After being ported to Franz Lisp, Macsyma was distributed to about 50 sites under a license restricted by MIT's interest in making Macsyma proprietary. The VAX Macsyma that ran on Franz Lisp was called Vaxima. When Symbolics Inc.
Symbolics
Symbolics refers to two companies: now-defunct computer manufacturer Symbolics, Inc., and a privately held company that acquired the assets of the former company and continues to sell and maintain the Open Genera Lisp system and the Macsyma computer algebra system.The symbolics.com domain was...

 bought the commercial rights to Macsyma from MIT to sell along with its Lisp Machines, it eventually was compelled to sell Macsyma also on DEC VAX and Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

 computers, paying royalties to the University of California for the use of Franz Lisp.

Other Lisp implementations for the VAX were MIT's NIL
NIL (programming language)
NIL was a 32-bit implementation of Lisp developed at MIT and intended to be the successor to Maclisp. NIL stood for "New Implementation of LISP", and was in part a response to DECs VAX computer...

 (never completely functional), University of Utah's Portable Standard Lisp
Portable Standard Lisp
Portable Standard Lisp is a tail-recursive dynamically bound dialect of Lisp inspired by its predecessor, Standard Lisp and the Portable Lisp Compiler. It was developed by researchers at the University of Utah in 1980, which released PSL 3.1; development was handed over to developers at...

, DEC's VAX Lisp, Xerox's Interlisp-VAX and Le Lisp
Le Lisp
Le Lisp is a Lisp dialect close to Common Lisp; it is lexically scoped, with a CLOS-like object system and using both packages and modules. It was designed by Jerome Chailloux and Emmanuel St James of INRIA.-External links:...

.

In 1982 the port of Franz Lisp to the Motorola 68000
Motorola 68000
The Motorola 68000 is a 16/32-bit CISC microprocessor core designed and marketed by Freescale Semiconductor...

 processor was started. In particular, it was ported to a prototype Sun-1 made by Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

, which ran a variant of Berkeley UNIX called SunOS
SunOS
SunOS is a version of the Unix operating system developed by Sun Microsystems for their workstation and server computer systems. The SunOS name is usually only used to refer to versions 1.0 to 4.1.4 of SunOS...

. In 1986, at Purdue University
Purdue University
Purdue University, located in West Lafayette, Indiana, U.S., is the flagship university of the six-campus Purdue University system. Purdue was founded on May 6, 1869, as a land-grant university when the Indiana General Assembly, taking advantage of the Morrill Act, accepted a donation of land and...

, Franz Lisp was ported to the CCI Power 6/32 platform (code named "Tahoe").

The major contributors to Franz Lisp at UC Berkeley
University of California, Berkeley
The University of California, Berkeley , is a teaching and research university established in 1868 and located in Berkeley, California, USA...

 were John K. Foderaro, Keith Sklower and Kevin Layer.

A company was formed to provide support for Franz Lisp called Franz Inc. The founders of Franz Inc. were Richard Fateman
Richard Fateman
Richard J. Fateman is a professor emeritus of computer science at the University of California, Berkeley.He received a BS in Physics and Mathematics from Union College in 1966, and a Ph.D. in Applied Mathematics from Harvard University in 1971. He was a major contributor to the Macsyma computer...

, John Foderaro, Fritz Kunze, Kevin Layer and Keith Sklower, all associated with UC Berkeley. After the founding of Franz Inc., development and research on Franz Lisp terminated. The first product of Franz Inc. was Franz Lisp running on various Motorola 68000-based workstations. However, almost immediately Franz Inc. began work on the new dialect of Lisp called Common Lisp
Common Lisp
Common Lisp, commonly abbreviated CL, is a dialect of the Lisp programming language, published in ANSI standard document ANSI INCITS 226-1994 , . From the ANSI Common Lisp standard the Common Lisp HyperSpec has been derived for use with web browsers...

.

Features

The Franz Lisp interpreter was written in C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 and Franz Lisp. It was bootstrapped solely using the C compiler. The Franz Lisp compiler, written entirely in Franz Lisp, was called Liszt, completing the pun on the name of the composer Franz Liszt
Franz Liszt
Franz Liszt ; ), was a 19th-century Hungarian composer, pianist, conductor, and teacher.Liszt became renowned in Europe during the nineteenth century for his virtuosic skill as a pianist. He was said by his contemporaries to have been the most technically advanced pianist of his age...

.

Some notable features of Franz Lisp were arrays in Lisp interchangeable with arrays in Fortran
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

 and a foreign function interface
Foreign function interface
A foreign function interface is a mechanism by which a program written in one programming language can call routines or make use of services written in another. The term comes from the specification for Common Lisp, which explicitly refers to the language features for inter-language calls as...

 which allowed interoperation with other languages at the binary level. Many of the implementation techniques were borrowed from Maclisp: bibop memory organization (BIg Bag Of Pages), small integers represented uniquely by pointers to fixed values in fields, and fast arithmetic.

Important applications

  • Franz Lisp was used as the example language in Robert Wilensky's first edition of Lispcraft.
  • An implementation of OPS-5 by DEC on Franz Lisp was used as the basis for a rule-based system for configuring VAX-11 computer system orders and was important to DEC's sales of these computers.
  • Slang: a circuit simulator used to design and test the RISC I microprocessor.

See also

  • PC-LISP
    PC-LISP
    PC-LISP is an implementation of the Franz Lisp dialect for DOS by Peter Ashwood-Smith.Version 2.11 was released on May 15, 1986. It can still be found on old abandonware and shareware download sites....

    is an implementation of Franz Lisp for MS-DOS which still runs on Windows and DOS emulators today.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK