| Rabin, Dan. (1996). Calculi for functional programming languages with assignments. Ph.D. |
.... languages, several approaches have been introduced to keep track of the lifetimes of references as required above, starting with Reynolds s syntactic control of interference (1978) the imperative lambda calculus (Swarup et al. 1991) lambda var (Odersky et al. 1993; Chen Odersky, 1994; Rabin, 1996), type and e ect systems (Tofte, 1990; Talpin Jouvelot, 1992b) coercions (Riecke, 1993; Riecke Viswanathan, 1995) and region calculi (Tofte Talpin, 1997) to name a few. The multitude of proposals and the fact that some variants of these proposals were initially unsound, witness the diculty ....
Rabin, Dan. (1996). Calculi for functional programming languages with assignments. Ph.D.
.... interference among distinct phrases are not robust with respect to fi reduction [Rey78] Later, attempts to devise type systems that encapsulate effects for ILC [SRI91] and var [ORH93, CO94] are now known to be incorrect as they rely on conditions that are not invariant under reduction [Rab96] A final blow is the failed proof of subject reduction for monadic state by Launchbury and Sabry [LS97] To gain some intuition about the problem, and to later understand our solution, we illustrate the subtle interaction of encapsulation and subject reduction using an example. Consider the ....
....which exports a local reference. One way to deal with the problem is to restrict the monadic language to prohibit a state thread from returning a computation. In his thesis, Rabin pursues this approach and proves that the subject reduction property holds for the natural choice for reductions [Rab96] Kieburtz pursues, without problems, a related approach that enforces that all effects are lexically scoped [Kie99] Despite its success, this approach severely limits the expressiveness of the target monadic language to the extent that simple source level functions that return computations ....
Dan Rabin. Calculi for Functional Programming Languages with Assignments. PhD thesis, Yale University, 1996. Technical Report YALEU/DCS/RR-1107.
....type system is now known to be incorrect. Reductions may change the set of free variables in a term, so the purity condition, which only restricts the types of free variables, can be circumvented. As a consequence, subject reduction fails. The problem was corrected by adapting the Haskell solution [20]. The work on region inference is also remarkably similar [27] Our sto construct is essentially creating a new region and initializing it. However, in contrast to the region language, an expression in our language cannot access variables in several regions. The type based encapsulation works well ....
Rabin, D. Calculi for Functional Programming Languages with Assignments. PhD thesis, Yale University, 1996. Technical Report YALEU/DCS/RR-1107.
.... criteria for controlling interference among distinct phrases are not robust with respect to fi reduction [Rey78] Later, attempts to devise type systems that encapsulate effects for ILC [SRI91] and var [ORH93, CO94] are now known to rely on conditions that are not invariant under reduction [Rab96] A final blow is the failed proof of subject reduction for monadic state by Launchbury and Sabry [LS97] To gain some intuition about the problem, and to later understand our solution, we illustrate the subtle interaction of encapsulation and subject reduction using an example. Consider the ....
....which exports a local reference. One way to deal with the problem is to restrict the monadic language to prohibit a state thread from returning a computation. In his thesis, Rabin pursues this approach and proves that the subject reduction property holds for the natural choice for reductions [Rab96] Kieburtz pursues, without problems, a related approach that enforces that all effects are lexically scoped [Kie99] Despite its success, this approach severely limits the expressiveness of the target monadic language to the extent that simple source level functions that return computations ....
Dan Rabin. Calculi for Functional Programming Languages with Assignments. PhD thesis, Yale University, 1996. Technical Report YALEU/DCS/RR-1107.
....from ilc in that they eschew the division of types into imperative and applicative types, but use additional type parameters for the imperative type constructors that express state dependence. These additional type parameters represent a conceptual overhead which we would like to avoid. Rabin [Rab96] attempts to combine the features of ilc and state threads though he did not consider type reconstruction issues. Huang and Reddy [HR96] present a type reconstruction system for syntactic control of interference. The promotion and dereliction operations are explicitly represented in the term ....
D. Rabin. Calculi for Functional Programming Languages with Assignment. PhD thesis, Yale University, 1996.
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