NIL (programming language): Difference between revisions

Content deleted Content added
Nilboy (talk | contribs)
m Changes to biblio
Nilboy (talk | contribs)
m Changed Lisp machine Lisp to Lisp Machine Lisp
Line 15:
Partly because of [[garbage collection (computer science)|garbage collection]] (NIL would use stop-and-copy garbage collection of its single [[Heap (data structure)|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 hardware of the day. This led to the creation of [[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, in particular the [[Digital Equipment Corporation|DEC]] [[VAX]].
 
NIl was an implementation of [[Lisp]] developed at [[MIT]] in the mid to late 1970s, and intended to be a modern successor to [[MacLisp]] that was suitable for running on stock hardware<ref name=STEELE/>, as opposed to [[Lisp machineMachine Lisp]] for the Lisp machines.<ref name="GABRIEL"/> "Originally designed as the first modern Lisp dialect on stock hardware after the development of Lisp-machine Lisp at MIT, it went on to become one of the main influences on the design of Common Lisp." (pg 63/294 of <ref name=GABRIEL/>) Since the users of the [[Macsyma]] program represented a large potential user base for NIL, it was necessary that NIL would be a large, complex system, and that speed would be imperative. For example high-speed [[bignum]]s was a requirement to support Macsyma, since NIL would be a failure with slow bignums.<ref>{{cite web | title=Dan Weinreb on NIL| url=http://www.paulgraham.com/weinreb.html|accessdate=2006-10-12}}</ref> Consequently NIL ended up with a large base of VAX assembly language. These requirements led to a very aggressive and complex optimization strategy which was applied prematurely, with negative results on the final system.<ref name=SHIVERS>{{cite web | title=History of T | author=Olin Shivers | url=http://www.paulgraham.com/thist.html | accessdate=2006-10-12}}</ref>
 
Concurrently with the effort to write NIL, a research group at [[Stanford University]] and