Show simple item record

dc.contributor.authorSteele, Guy Lewis, Jr.en_US
dc.contributor.authorSussman, Gerald Jayen_US
dc.date.accessioned2004-10-04T14:39:05Z
dc.date.available2004-10-04T14:39:05Z
dc.date.issued1978-05-01en_US
dc.identifier.otherAIM-453en_US
dc.identifier.urihttp://hdl.handle.net/1721.1/6094
dc.description.abstractWe examine the effects of various language design decisions on theprogramming styles available to a user of the language, with particular emphasis on the ability to incrementally construct modular systems. At each step we exhibit an interactive meta-circular interpreter for the language under consideration. Each new interpreter is the result of an incremental change to a previous interpreter. We explore the consequences of various variable binding disciplines and the introduction of side effects. We find that dynamic scoping is unsuitable for constructing procedural abstractions, but has another role as agent of modularity, being a structured form of side effect. More general side effects are also found to be necessary to promote modular style. We find that the notion of side effect and the notion of equality (object identity) are mutually constraining; to define one is to define the other. The interpreters we exhibit are all written in a simple dialect of LISP, and all implement LISP-like languages. A subset of these interpreters constitute a partial historical reconstruction of the actual evaluation of LISP.en_US
dc.format.extent75 p.en_US
dc.format.extent5131617 bytes
dc.format.extent4018042 bytes
dc.format.mimetypeapplication/postscript
dc.format.mimetypeapplication/pdf
dc.language.isoen_US
dc.relation.ispartofseriesAIM-453en_US
dc.titleThe Art of the Interpreter of the Modularity Complex (Parts Zero, One, and Two)en_US


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record