Login

Shallow Binding in LISP 1.5

Show full item record




Title: Shallow Binding in LISP 1.5
Author: Baker, Henry G. Jr.
Publisher: MIT Artificial Intelligence Laboratory
Issue Date: 1977-01
Abstract: Shallow binding is a scheme which allows the value of a variable to be accessed in a bounded amount of computation. An elegant model for shallow binding in LISP 1.5 is presented in which context-switching is an environment structure transformation called "re-rooting". Re-rooting is completely general and reversible, and is optional in the sense that a LISP 1.5 interpreter will operate correctly whether or not re-rooting is invoked on every context change. Since re-rooting leaves (ASSOC X A) invariant, for all variables X and all environments A, the programmer can have access to a re-rooting primitive, (SHALLOW), which gives him dynamic control over whether accesses are shallow or deep, and which effects only the speed of execution of a program, not its semantics. So long as re-rooting is an indivisible operation, multiple processes can be active in the same environment structure. The re-rooting scheme is compared to a cache scheme for shallow binding and the two are found to be compatible. Finally, the concept of re-rooting is shown not to depend upon LISP's choice of dynamic instead of lexical binding for free variables; hence it can be used in an Algol interpreter, for example.
Description: Key Words and Phrases: LISP 1.5, environment structures, FUNARGs, shallow and deep binding, multiprogramming, cache. CR Categories: 4.13, 4.22, 4.32 This report describes research done at the Artificial Intelligence Laboratory of the Massachusetts Institute of Technology. Support for the laboratory's artificial intelligence research is provided in part by the Advanced Research Projects Agency of the Department of Defense under Office of Naval Research contract N00014-75-C-0522.
URI: http://hdl.handle.net/1721.1/41975
Series/Report no.: MIT Artificial Intelligence Laboratory Working Papers, WP-138;
Keywords: cache, multiprogramming, shallow and deep binding, FUNARGs, environment structures, LISP 1.5

Files in this item

Files Size Format View Description
Main article 421.4Kb PDF View/Open Main article

This item appears in the following Collection(s)

Show full item record

Search DSpace@MIT


Advanced Search

Browse

My Account

Links