NIL (programming language): Difference between revisions

Content deleted Content added
Template:Infobox programming language parameters: update to source, move, add, fill. WP:LINKs: adds, updates. WP:LEAD clarify for topic novices. WP:REF Template:Cite web parameters: update, respace per source, reorder, add, fill. WP:EoS WP:COPYEDITs: clarify. Nonacronym proper noun WP:ALLCAPS > sentence case. 1st instance full terms define < WP:ABBRs. Cut needless carriage returns. Template:Lisp > history section. WP:NAVBOX add.
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
 
(7 intermediate revisions by 7 users not shown)
Line 1:
{{Short description|Dialect of Lisp}}
{{About|the programming language|other uses|Nil (disambiguation){{!}}Nil}}
{{Infobox programming language
Line 17 ⟶ 18:
|programming language = [[VAX]] [[Assembly language|assembly]]
|discontinued = Yes
|platform = [[PDP-6]], [[PDP-10VAX]]
|operating system = [[TOPS-10]], [[Incompatible Timesharing SystemOpenVMS|ITSVAX/VMS]]
|license =
|file ext =
Line 29 ⟶ 30:
}}
 
'''New Implementation of LISP''' ('''NIL''') is a [[programming language]], a [[Dialect (computing)|dialect]] of the language [[Lisp (programming language)|Lisp]], developed at the [[Massachusetts Institute of Technology]] (MIT) during the 1970s, and intended to be the successor to the language [[Maclisp]].<ref name=Steele>{{cite web |url=https://www.dreamsongs.com/Files/HOPL2-Uncut.pdf |title=The evolution of Lisp |last1=Steele |first1=Guy L. Jr. |last2=Gabriel |first2=Richard P. |access-date=2017-08-05}}</ref> It is a [[32-bit computing|32-bit]] implementation,<ref name=Gabriel>{{cite book
|last=Gabriel
|first=Richard P.
|title=Performance and evaluation of Lisp systems
|publisher=[[MIT Press]]; Computer Systems Series
|url=http://www.dreamsongs.com/NewFiles/Timrep.pdf
|date=May 1985
|isbn=978-0-262-07093-5
|lccn=85015161
|lccn=85015161}}<!-- xiv, 285 p.; 23 cm. Cambridge, Mass. --></ref> and was in part a response to [[Digital Equipment Corporation]]'s (DEC) [[VAX]] computer. The project was headed by Jon L White,<ref>{{cite web |title=Brief History of the Lisp Language |last=Pitman |first=Kent M. |url=http://www.lisp.org/table/Lisp-History.html |access-date=2006-10-12 |archive-url=https://web.archive.org/web/20061010150728/http://www.lisp.org/table/Lisp-History.html<!-- Bot retrieved archive --> |archive-date=2006-10-10}}</ref> with a stated goal of maintaining compatibility with MacLisp while fixing many of its problems.
|archive-date=2016-09-22
|access-date=2006-10-15
|archive-url=https://web.archive.org/web/20160922192958/http://www.dreamsongs.com/NewFiles/Timrep.pdf
|url-status=dead
|lccn=85015161}}<!-- xiv, 285 p.; 23 cm. Cambridge, Mass. --></ref> and was in part a response to [[Digital Equipment Corporation]]'s (DEC) [[VAX]] computer. The project was headed by Jon L White,<ref>{{cite web |title=Brief History of the Lisp Language |last=Pitman |first=Kent M. |url=http://www.lisp.org/table/Lisp-History.html |access-date=2006-10-12 |archive-url=https://web.archive.org/web/20061010150728/http://www.lisp.org/table/Lisp-History.html<!-- Bot retrieved archive --> |archive-date=2006-10-10}}</ref> with a stated goal of maintaining compatibility with MacLisp while fixing many of its problems.
 
==History==
The [[Lisp (programming language)|Lisp]] language was invented in 1958 by [[John McCarthy (computer scientist)|John McCarthy]] while he was at [[Massachusetts Institute of Technology]] (MIT).<ref>{{cite web |url=http://www.softwarepreservation.org/projects/LISP/ |title=History of LISP |last=McJones |first=Paul |access-date=2006-10-12}}</ref> From its inception, Lisp was closely connected with the [[artificial intelligence]] (AI) research [[Community of practice|community]], especially on [[PDP-10]] systems. The [[36-bit computing|36-bit]] [[Word (computer architecture)|word]] size of the [[PDP-6]] and [[PDP-10]] was influenced by the usefulness of having two Lisp [[18-bit computing|18-bit]] [[Pointer (computer programming)|pointers]] in one word: "The PDP-6 project started in early 1963, as a [[24-bit computing|24-bit]] machine. It grew to 36 bits for LISP, a design goal."<ref>{{cite web |url=http://groups.google.com/group/alt.folklore.computers/browse_thread/thread/6e5602ce733d0ec/17597705ae289112 |title=The History of TOPS or Life in the Fast ACs |last=Hurley |first=Peter J. |editor-last1=Stevens |editor-first=Jack |editor-last2=Johnson |editor-first2=Lum |website=Google Groups |access-date=2018-11-28}}</ref> Lisp was used as the implementation of the programming language Micro [[Planner (programming language)|Planner]] that was the foundation for the famous AI system [[SHRDLU]]. Lisp, in particular [[Maclisp]] (so named because it originated at MIT's project MAC) was also used to implement the [[Macsyma]] [[computer algebra system]]. In the 1970s, as AI research spawned commercial offshoots, the performance of extant Lisp systems became a growing problem.
 
Partly because of [[Garbage collection (computer science)|garbage collection]] (Lisp would use stop-and-copy garbage collection of its single heap for [[Dynamic memory allocation|memory allocation]]<ref name="Gabriel"/>) and partly because of its representation of internal structures, Lisp became difficult to run on the memory-limited stock [[computer hardware]] of the day. This led to creating [[Lisp machine]]s: dedicated hardware for running Lisp environments and programs. An alternative was to use the more powerful commodity hardware which was becoming available, especially the [[Digital Equipment Corporation]] (DEC) [[VAX]].
Line 49 ⟶ 55:
 
Although unsuccessful in meeting its goals as a used language, NIL was important in several ways. First, it brought together Jon L. White, [[Guy L. Steele Jr.]], and Richard P. Gabriel, who were later to define [[Common Lisp]].<ref name=Steele/> Second, Jonathan Rees worked on part of the NIL project during a year away from [[Yale University]]. On returning to Yale, he was hired by the [[computer science]] department to write a new Lisp, which became the optimizing, native code [[Scheme (programming language)|Scheme]] system named [[T (programming language)|T]]. In part, NIL begat this name, since "T is not NIL".<ref name=Shivers/>
 
{{Lisp}}
 
==Quotes==
{{QuoteBlockquote |The genesis & eventual failure of this kind of project is always clearly visible (in hindsight) in the [[shibboleth]]s of the early discussions. One key tip-off phrase is always something of the form, "We'll throw out all the old [[cruft]], start over fresh, and just Do Things Right." |author=Olin Shivers<ref name=Shivers/>}}
 
==References==
{{Reflist}}
<!-- See http://en.wikipedia.org/wiki/Wikipedia:Footnotes to learn how to generate footnotes using the <ref> and </ref> tags, and the template below. -->
<!--<nowiki>
See http://en.wikipedia.org/wiki/Wikipedia:Footnotes to learn how to generate footnotes using the <ref> and </ref> tags, and the template below.
</nowiki>-->
 
==Bibliography==
Line 70 ⟶ 75:
* Jon L. White. Nil: A perspective. Proceedings of 1979 Macsyma Users' Conference, Washington, D.C., June 1979.
* Rodney A. Brooks, Richard P. Gabriel, Guy L. Steele Jr. S-1 Common Lisp Implementation. Proceedings of the 1982 ACM symposium on LISP and functional programming, Pittsburgh, 1982, pages 108 – 113. ACM DL
* Rodney A. Brooks, Richard P. Gabriel, Guy L. Steele Jr. An optimizing compiler for a lexically scoped LISP. Proceedings of the 1982 Symposium on Compiler Construction, Boston, June 1982, pages 261-275261–275. ACM DL
* Mark Smotherman. S-1 Supercomputer (1975–1988). Web site, last updated April 24, 2004. http://www.cs.clemson.edu/~mark/s1.html
 
Line 78 ⟶ 83:
[[Category:Functional languages]]
[[Category:Lisp programming language family]]
[[Category:Programming languages created in 1979]]