Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

*Lisp

From Wikipedia, the free encyclopedia
Programming language
This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "*Lisp" – news ·newspapers ·books ·scholar ·JSTOR
(February 2008) (Learn how and when to remove this message)
*Lisp (StarLisp)
ParadigmsMulti-paradigm:functional,procedural,reflective,meta,parallel
FamilyLisp
Designed byCliff Lasser,Steve Omohundro
DeveloperThinking Machines Corporation
First appeared1986; 39 years ago (1986)
Typing disciplineDynamic,strong
ScopeStatic, lexical
Implementation languageCommon Lisp
PlatformConnection Machine
OSConnection Machine
Influenced by
Lisp,Common Lisp
Influenced
C*

*Lisp (orStarLisp) is aprogramming language, adialect of the languageLisp.[1] It was conceived of in 1985 by two employees of theThinking Machines Corporation, Cliff Lasser andSteve Omohundro, as a way to provide an efficient yet high-level language for programming the nascentConnection Machine (CM).

History

[edit]

Prelude

[edit]

At the time the Connection Machine was being designed and built, the only language being actively developed for it was anassembly-level language named PARIS (ParallelInstructionSet). It became evident that a better way to program the machine was needed, and quickly. Waiting for the completion ofConnection Machine Lisp (CM Lisp), an implementation of thevery high-level programming languageLisp withparallel computing extensions) was not an option. CM Lisp had been proposed byDanny Hillis, and development was expected to continue for several more years.

Development

[edit]

A *Lispinterpreter was initially developed. It became apparent quickly that a *Lispcompiler, translating *Lisp intoLisp and PARIS, would be needed to attain the gigaFLOPS speed that was attainable in theory by a Connection Machine. The *Lisp compiler was written by Jeff Mincy and was first released in 1986. An application achieving more than two gigaFLOPS, a helicopter wake simulator, was developed by Alan Egolf, then an employee ofUnited Technologies, and J. P. Massar, a Thinking Machines employee, in 1987.[2]

A *Lisp Simulator, anemulator meant to run *Lisp code on standard, non-parallel machines, was developed at the same time by J. P. Massar. This simulator still exists,[3] and was ported toAmerican National Standards Institute (ANSI)Common Lisp (CL) in 2001. An older version written in the original CL, exists in theCarnegie Mellon University (CMU)artificial intelligence (AI) repository.[4]

Later versions of *Lisp, involving significant upgrades to its functions and performance, were worked on by Cliff Lasser, Jeff Mincy, and J. P. Massar through 1989. *Lisp was implemented on the Thinking Machines CM5 circa 1990–1991 by J. P. Massar and Mario Bourgoin.

Timeline of Lisp dialects
19581960196519701975198019851990199520002005201020152020
 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
 muLisp
 Common Lisp ANSI standard
 Le Lisp
 MIT Scheme
 XLISP
 T
 Chez Scheme
 Emacs Lisp
 AutoLISP
 PicoLisp
 Gambit
 EuLisp
 ISLISP
 OpenLisp
 PLT Scheme Racket
 newLISP
 GNU Guile
 Visual LISP
 Clojure
 Arc
 LFE
 Hy

Implementation

[edit]

StarLisp was written onCommon Lisp (CL), and thus had the full power of CL behind it. To use a Connection Machine, one needed a host orfront-end. To use *Lisp, that front-end had to run CL.Symbolics' machines usingGenera andSun Microsystems workstations runningLucid Inc.'s Lucid Common Lisp were both used to operate *Lisp.

StarLisp operated onParallelVariables (PVARS). These represented Connection Machine memory, and were essentiallyvectors: one element per CM processor (or virtual processor).

StarLisp consisted of standard operations on PVARS, like vector addition and multiplication, along with communication primitives that essentially reordered the elements of a PVAR using the CM's communication hardware to optimally route the data.

References

[edit]
  1. ^McJones, Paul (2015-04-19)."Parallel Lisps: Connection Machine *Lisp (StarLisp)".Computer History Museum. Retrieved2018-12-29.
  2. ^Helicopter Free Wake Implementation On Advanced Computer Architectures, International Conference on Basic Rotorcraft Research, 1988.
  3. ^"Franz Inc".Franz Inc. Archived fromthe original on 2005-03-06. Retrieved2005-06-26.
  4. ^Massar, J. P. (13 February 1995)."STARSIM: Thinking Machines' *Lisp Simulator".Carnegie Mellon University (CMU) Artificial Intelligence Repository. Retrieved2018-12-29.
Features
Object systems
Implementations
Standardized
Common
Lisp
Scheme
ISLISP
Unstandardized
Logo
POP
Operating system
Hardware
Community
of practice
Technical standards
Education
Books
Curriculum
Organizations
Business
Education
People
Common Lisp
Scheme
Logo
POP
Retrieved from "https://en.wikipedia.org/w/index.php?title=*Lisp&oldid=1190476138"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp