15 citations found. Retrieving documents...
D. G. Bobrow and B. Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16(10):591--603, Oct 1973.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Managing Stack Frames in Smalltalk - Eliot Moss Department (1987)   (9 citations)  (Correct)

....been referred to from the heap at some time, then we will likely reclaim many contexts without garbage collecting the main heap. 3 Previous Work We now briefly compare our scheme with some other published techniques. 3. 1 Bobrow and Wegbreit A stack frame management scheme was described in [Bobrow and Wegbreit 73] some time ago; the method has sometimes gone by the name spaghetti stacks . Spaghetti stacks use reference counts for reclamation, but achieve contiguous stack frame allocation in the normal cases. Our scheme should perform better in terms of normal case allocation and reclamation, since we ....

Daniel G. Bobrow and Ben Wegbreit, "A Model and Stack Implementation of Multiple Environments", Communications of the ACM, Volume 16, Number 10, October 1973, pp. 591--603.


Supporting Dynamic Data Structures on Distributed.. - Rogers, CARLISLE.. (1995)   (98 citations)  (Correct)

....when the migrated thread returns. The stolen continuation may allocate new stack frames, which could overwrite the frames of the migrated thread if we used a simple stack management policy. To avoid this problem, we adopt a simplification of a single stack technique for multiple environments by Bobrow and Wegbreit [1973]. 16 1 Bobrow and Wegbreit s method, called spaghetti stacks, splits a frame into a basic frame, which can be shared among several access modules, and an extension, which contains data local to an access module. Associated with each basic frame is a counter of the number of active access ....

Bobrow, D. and Wegbreit, B. 1973. A model and stack implementation of multiple environments. Communications of the ACM 16, 10, 591--603.


Shallow Binding in Lisp 1.5 - Baker (1978)   (15 citations)  (Correct)

....on the fact that rerooting preserves the in degree of all environment nodes, except for the old and the new roots. This accessibility equivalence to deep binding is a nontrivial property of our shallow binding model; some other models, such as deep binding with a cache cell for each variable [1,2,10], may retain pointers to nodes long after they would have become inaccessible in the deep binding model. 4. Casual Rerooting Suppose now that we have a standard deep binding (nonrerooting) Lisp 1.5 interpreter which has been augmented by the shallow[ primitive (see Figure 5) When this ....

....each acting as a value cell for a display variable. Rerooting is thus a value preserving transformation on a tree environment structure and has nothing to do with how the structure was created; e.g. the interpreter could use either lexical or dynamic scoping, or even some combination of the two [1]. 6. Roots Our algorithm was discovered by pondering the Greenblatt Lisp machine proposal [3] which also describes a shallow scheme for handling general FUNARG s. His scheme does not reverse any pointers, but appends an up down bit to each node in the environment tree which essentially ....

Bobrow, D.G., and Wegbreit, B. A model and stack implementation of multiple environments. Comm. ACM 16, 10 (Oct. 1973), 591-603.


Language Features for Flexible Handling of Exceptions in.. - Borgida (1985)   (55 citations)  (Correct)

....all signallers, including the initial one, continue to exist alongside that of the handler, which is linked to the frame of the caller that provided the handler. The diagram illustrates the case when P contains the 7 This is a very simplified version of a model of process activation described in [3]. 15 statement Q [E = H] and S signalled E inside this activation of Q. P Q H S If the handler H terminates by return ing, then the frames for S, Q are abandoned; if the handler terminates by ....

Bobrow,D.G. and B. Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM 16(10):591-603, October, 1973.


Trampolined Style - Ganz, Friedman, Wand (1999)   (3 citations)  (Correct)

....hStepping Exampleij (pogo stick (fact acc break 3 1) resume) resume) resume) 6 A more useful breakpoint facility would allow arbitrary nontrampolined expressions to be evaluated while the computation is halted. This could be supported in a language with first class environments [3]. For this example, we assume eval tramp, a tail form interpreter that has been trampolined. There is something rather subtle in the uses of sequence in this example. We compose an evaluation with its continuation, although the evaluation only yields a thread, perhaps with the evaluation barely ....

Daniel G. Bobrow and Ben Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16(10):591--603, October 1973.


List Processing in Real Time on a Serial Computer - Baker, Jr. (1978)   (175 citations)  (Correct)

.... function to return the current refcount of an object, and suitably clean semantics were associated with this function, then one might be able to make use of this information within the user program to speed up certain algorithms, such as structure tracing or backtracking, la Bobrow and Wegbreit [8]. This author is not aware of any language which makes this information available; if it were available, good programmers would certainly find a use for it. 9. The Costs of Real Time List Processing The amount of storage and time used by a real time list processing system can be compared with ....

Bobrow, D.G. and Wegbreit, B. A model and stack implementation of multiple environments. Comm. ACM 16, 10 (Oct. 1973), 591-603.


Lazy Remote Procedure Call and its Implementation in a Parallel .. - Marc Feeley (1995)   (2 citations)  (Correct)

....processors don t steal tasks from other processors, load balancing is not automatic. Task distribution is directly dependent on the distribution of the data and the uniformity of the work to be performed on the data. The task scheduling policy adopted by Olden requires that a spaghetti stack [ Bobrow and Wegbreit, 1973 ] be used to manage the stack. This adds overhead to all function calls and is not compatible with the stack management of traditional compilers. Finally, the operator can not be used on local variables because stack frames move as a result of task migration (the compaction of the spaghetti ....

D. Bobrow and B. Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16(10):591--603, 1973.


Lazy Threads: Compiler and Runtime Structures for Fine-Grained.. - Goldstein (1997)   (3 citations)  (Correct)

....above the current frame, the cactus stack can be implemented in a single stack. This means that no storage related disconnection operations are needed when a lazy thread becomes independent. The use of a single interwoven stack for multiple environments was first introduced by Bobrow and Wegbreit [10]. It has since been used in a more simplified form in Olden [12] and in implementing functional languages [31] In all cases, it has been accompanied by a garbage collector to perform compaction. In a spaghetti stack, every allocation request is fulfilled by allocating space at the top of the ....

....case of a remote page fault, communication can be overlapped with computation because each processor runs multiple scheduling threads. Olden [12] is based on spaghetti stacks, continuation stealing, eager disconnect, and an explicit queue. In Olden, as well as in previous uses of spaghetti stacks [10, 31], a CHAPTER 8. RELATED WORK 159 garbage collector is used to reclaim freed frames. Olden s thread model is more powerful than ours, since in Olden threads can migrate. The idea is that a thread computation that follows references to unstructured heap allocated data might increase locality if ....

Daniel G. Bobrow and Ben Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16:591--602, 1973.


Lisp - Almost a whole Truth! - Queinnec (1989)   (Correct)

....(evaluate (car.of.cons forms) r newk ss s1 s2 fl) 3.2 Resumption of a Continuation Many continuation types appear in evaluate namely if.cont, setq.cont, progn.cont, etc. These entities may be seen as frames pushed on the top of the stack . It is not a true stack since the control link [Bobrow Wegbreit 73] is an explicit field. The meanings of these elementary continuation frames may be found in resume which is naturally driven by the type of the continuation. resume returns a value to the continuation. defun resume (k e r ss s1 s2 fl) eval.case (type.of k) type.eval.function.cont (let ( form ....

Daniel G. Bobrow, Ben Wegbreit, A model and Stack Implementation of Multiple Environments, CACM 16, 10 (Oct 1973), pp 591-603.


The Evolution of Lisp - Steele, Jr., Gabriel (1993)   (15 citations)  (Correct)

....for they had the convenience of optional arguments, which did not come to MacLisp until optional and other complex lambda list syntax was retrofitted, late in the game, from Lisp Machine Lisp. One of the most innovative of the language extensions introduced by Interlisp was the spaghetti stack [Bobrow, 1973]. The problem of retention (by closures) of the dynamic function definition environment in the presence of special variables was never completely solved until spaghetti stacks were invented. The idea behind spaghetti stacks is to generalize the structure of stacks to be more like a tree, with ....

....of coroutines; there was only one active locus of control, but arbitrarily many logical threads and primitives for explicitly transferring the active locus from one to another. This design was strongly influenced by the spaghetti stack model introduced by Daniel Bobrow and Ben Wegbreit [Bobrow, 1973] and implemented in BBN Lisp (later to be known as Interlisp) Like spaghetti stacks, Conniver provided separate notions of a data environment and a control environment and the possibility or creating closures over either. Later work with the Scheme language brought out the point that data ....

Bobrow, Daniel G., and Ben Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16:10, pp. 591--603, October 1973.


Capriccio: Scalable Threads for Internet Services - von Behren, Condit, Zhou.. (2003)   (14 citations)  (Correct)

No context found.

D. G. Bobrow and B. Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16(10):591--603, Oct 1973.


Capriccio: Scalable Threads for Internet Services - von Behren, Condit, Zhou.. (2003)   (14 citations)  (Correct)

No context found.

D. G. Bobrow and B. Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16(10):591--603, Oct 1973.


Capriccio: Scalable Threads for Internet Services - Rob Von Behren (2003)   (14 citations)  (Correct)

No context found.

D. G. Bobrow and B. Wegbreit. A model and stack implementation of multiple environments. Communications of the ACM, 16(10):591--603, Oct 1973.


Actor Systems for Real-Time Computation - Baker, Jr. (1978)   (6 citations)  (Correct)

No context found.

Bobrow, D. G. and Wegbrel. t, B. ,A Model and Stack Implementation 'of Multiple Environments". C/fG 16,10 (Oct. 1973), 591-603.


An Open Operating System for a Single-User Machine - Lampson, Sproull (1979)   (14 citations)  (Correct)

No context found.

Bobrow, D. G. and B. Wegbreit, "A model and stack implementation of multiple environments," Comm. ACM 16, 10 (Oct 1973).

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC