History of the Scheme programming language: Difference between revisions

Content deleted Content added
m clean up; http->https (see this RfC) using AWB
Line 27:
==Carl Hewitt, the Actor model, and the birth of Scheme==
{{See also|Actor model|Planner (programming language)|MDL (programming language)}}
In 1971 Sussman, [[Drew McDermott]], and [[Eugene Charniak]] had developed a system called [[Planner (programming language)#Micro-planner implementation|Micro-Planner]] which was a partial and somewhat unsatisfactory implementation of [[Carl Hewitt]]'s ambitious [[Planner (programming language)|Planner]] project. Sussman and Hewitt worked together along with others on [[MDL (programming language)|Muddle (later MDL)]], an extended Lisp which formed a component of Hewitt's ambitious [[Planner (programming language)|Planner]] project. Drew McDermott, and Sussman in 1972 developed the Lisp-based language ''Conniver'', which revised the use of automatic backtracking in Planner which they thought was unproductive. Hewitt was dubious that the "hairy control structure" in Conniver was a solution to the problems with Planner. [[Pat Hayes]] remarked: "Their [Sussman and McDermott] solution, to give the user access to the implementation primitives of Planner, is however, something of a retrograde step (what are Conniver's semantics?)"<ref>Pat Hayes Some Problems and Non-Problems in Representation Theory AISB’74.</ref>
 
In November 1972, Hewitt and his students invented the [[Actor model]] of computation as a solution to the problems with Planner.<ref name="hewitt1973">{{cite journal|author=Carl Hewitt |author2=Peter Bishop |author3=Richard Steiger|title=A Universal Modular Actor Formalism for Artificial Intelligence|publisher=IJCAI|year=1973}}</ref> A partial implementation of Actors was developed called Planner-73 (later called PLASMA). Steele, then a graduate student at MIT, had been following these developments, and he and Sussman decided to implement a version of the Actor model in their own "tiny Lisp" developed on top of [[MacLisp]], in order to understand the model better. Using this basis they then began to develop mechanisms for creating actors and sending messages.<ref name="revisited">{{cite journal