| M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In Proceedings of the Fourth ACM SIGPLAN International Conference on Functional Programming, pages 8--17. ACM Press, 1999. |
....2. Others subsequently used monads on a merely large scale, to encapsulate the handling of impure language features by an interpreter; e.g. Wa92c] 3. Monads have since been used on a ner grained scale, to encapsulate individual impure phenomena occurring within arbitrary programs; e.g. [SeSa99]. The universal scale overarches one universe of discourse which is to say, one programming language at a time. Commensurate with the basic principle that all software engineering artifacts are languages , anything that applies to languages applies to arbitrarily small entities within a ....
Miley Semmelroth and Amr Sabry, \Monadic Encapsulation in ML", SIGPLAN Notices 34 no. 9 (September 1999) [Proceedings of the ACM SIGPLAN International Conference on Functional Programming (ICFP '99), Paris, France, 27-29 September 1999], pp. 8-17.
....and deallocations follow a stack discipline in unison with the original program s expression structure. The original inspiration for Tofte and Talpin s region calculus came from work on effect systems [4, 12] Recent research shows how such systems can be represented in the monadic lambda calculus [17, 10]. The TT system is efficient for smaller programs [15] but requires a number of extra analyses to give reasonable behavior for larger programs [2] The problem is that in practice object lifetimes do not follow a stack discipline. In the ML Kit [13] a compiler for Standard ML using region based ....
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In International Conference on Functional Programming (ICFP), volume 34(9) of SIGPLAN Notices, pages 8--17, 1999.
....is difficult. Early attempts to prove soundness by subject reduction [LS97] are now known to be incorrect. More recently, Semmelroth and Sabry have succeeded in defining a CBV language with monadic encapsulation, relating this to a language with effect masking and proving type soundness [SS99] Moggi and Palumbo have also addressed this problem [MP99] by defining a slightly different form of monadic encapsulation (without the bogus type parameter) and proving a type soundness result for a language in which the stateful operations are strict. Proving soundness for monadic ....
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In Proceedings of the International Conference on Functional Programming. ACM, 1999.
....interpreters from SL speci cations. A prototype system is implemented and has been tested on a number of examples, including a syntactic theory for Verilog. 1 Introduction Syntactic theories have been developed to reason about many aspects of modern programming languages[AB97, AFM 95, LS97, SS99, FLS99] Having roots in the calculus, these theories rely on transforming source programs to other source programs. Only the syntax of the programming language is relevant. Experience shows that the development of such theories is error prone. In order to ensure that the theories are sensible, ....
.... Various examples have been tested, including the operational semantics of core ML (lambda calculus with built in operations, store operations, and exception handling) type inference Supported by NSF grant CCR 9624711 for core ML, a syntactic theory for a store encapsulation language[SS99] and a syntactic theory for Verilog[FLS99] The paper is organized as follows: Section 2 gives an overview of the SL system using the call by value calculus as an example. Section 3 describes some issues in compiling SL programs, such as type checking for contexts, patternmatching, and code ....
Miley Semmelroth and Amr Sabry. Monadic encapsulation in ML. In the ACM SIGPLAN International Conference on Functional Programming, pages 8-17. ACM Press, New York, 1999.
....Launchbury and Sabry (see [LS97] gave a formal account of type safety (for the whole system) by proving subject reduction for a reduction semantics. Unfortunately, there is a bug in the proof of type safety in [LS97] which can be traced to the complicated semantics of lazy state threads (see [SS99]) However, Sabry and Semmelroth are able to adapt the formal developments in [LS97] to prove type safety for monadic encapsulation of strict state. Our goals are very similar to those stated in [SS99] while we di er substantially in the methodology and strength of the results. We formalise the ....
....safety in [LS97] which can be traced to the complicated semantics of lazy state threads (see [SS99] However, Sabry and Semmelroth are able to adapt the formal developments in [LS97] to prove type safety for monadic encapsulation of strict state. Our goals are very similar to those stated in [SS99], while we di er substantially in the methodology and strength of the results. We formalise the intended implementation as a big step operational semantics (which will be referred to as the dynamic semantics) then we prove soundness of equivalence and type safety. The dynamic semantics is ....
[Article contains additional citation context not shown here]
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In Proc. of the 1999 Int. Conf. on Functional Programming, Paris, France, 27-29 September 1999. 14
.... comes from) Early attempts to prove soundness by subject reduction are now known to be incorrect [LS97] More recently, Semmelroth and Sabry have succeeded in defining a CBV language with monadic encapsulation, relating this to a language with effect masking and proving type soundness [SS99] Moggi and Palumbo have also addressed this problem [MP99] by defining a slightly different form of monadic encapsulation (without the bogus type parameter) and proving a type soundness result for a language in which the stateful operations are strict. Proving soundness for monadic ....
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In Proceedings of the International Conference on Functional Programming. ACM, 1999.
....Launchbury and Sabry (see [LS97] gave a formal account of type safety (for the whole system) by proving subject reduction for a reduction semantics. Unfortunately, there is a bug in the proof of type safety in [LS97] which can be traced to the complicated semantics of lazy state threads (see [SS99]) However, Sabry and Semmelroth are able to adapt the formal developments in [LS97] to prove type safety for monadic encapsulation of strict state. Our goals are very similar to those stated in [SS99] while we di#er substantially in the methodology and strength of the results. We formalise the ....
....safety in [LS97] which can be traced to the complicated semantics of lazy state threads (see [SS99] However, Sabry and Semmelroth are able to adapt the formal developments in [LS97] to prove type safety for monadic encapsulation of strict state. Our goals are very similar to those stated in [SS99], while we di#er substantially in the methodology and strength of the results. We formalise the intended implementation as a big step operational semantics (which will be referred to as the dynamic semantics) then we prove soundness of # equivalence and type safety. The dynamic semantics is ....
[Article contains additional citation context not shown here]
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In Proc. of the 1999 Int. Conf. on Functional Programming, Paris, France, 27--29 September 1999. 14
....to augment the ST monad with effects. In fact, the letregion construct [TT94, TB98] which was originally named private [LG88] corresponds closely to the runST operator in Glasgow Haskell. This connection can be formalized and proved correct for a simple call by value language with runST [SS99] Similarly, in Haskell the monad IO is used to represent all computational effects that perform input output [PW93, PH97] Dialects of Haskell extend this to call procedures written in other languages [PW93, FLMP99] deal with concurrency [PGF96] or handle exceptions [PRH 99] Again, all ....
Miley Semmelroth and Amr Sabry. Monadic Encapsulation in ML. 4'th ACM International Conference on Functional Programming, pages 8--17, Paris, September 1999.
....often use powerful systems of inference to assign regions. Monadic ML A recent look at encapsulation in ML de nes a simpli ed form of e ect inference and masking and then gives a translation to monadic form that preserves the type, thus showing a relationship between the above two approaches [8]. Then it shows the soundness of the type system using a semantics that allows dangling pointers. Our research relies heavily on the techniques used in this semantics. 5 ClassicJava ClassicJava was developed as a jumping o point for an analysis of mixins and polymorphic types [4] It ....
....Objects are represented as a pair consisting of the class name and a mapping of eld names to references, hc; Fi. The store is a mapping of references to these objects. However, at this point our semantics diverges signi cantly from ClassicJava and instead models the semantics of Monadic ML [8]. Like Monadic ML, we add sto e to the syntax as a valid expression so that they can be nested. Nesting expressions allows us to cleanly localize store usage even when an encapsulated expression encapsulates one of its subexpressions. The above, unlike S, actually stands for a series of ....
Miley Semmelroth and Amr Sabry. Monadic encapsulation in ML. Soon to appear in ACM SIGPLAN International Conference on Functional Programming, 1999.
....the value and ignoring the store, these references become dangling. To address this problem, the type system is augmented to track the lifetimes of references and reject the encapsulation of terms which may import or export references. The detailed analysis of encapsulation and its justification [20, 21, 24, 29] are not necessary for our purposes, but we must be aware of the augmented type system. In that augmented type system, computations in the built in state monad have type (ST rho a) where rho is a type variable used for enforcing the encapsulation of references. The type of the store is still ....
Semmelroth, M., and Sabry, A. Monadic encapsulation in ML. In the ACM SIGPLAN International Conference on Functional Programming (1999), ACM Press, New York, pp. 8--17.
....structure of terms as given in the rst de nition. Such a proof is a routine induction: it would typically be omitted from books or published articles. However, as we discovered in several current projects (Ariola and Felleisen, 1997; Fiskio Lasseter and Sabry, 1999; Launchbury and Sabry, 1997; Semmelroth and Sabry, 1999), such a proof is incredibly tedious in all but the most trivial programming languages. Not only that, but in the process of designing the semantics one typically experiments with several de nitions for the semantic notions: every such experiment requires a laborious and errorprone proof attempt. ....
Semmelroth, M. and A. Sabry: 1999, `Monadic Encapsulation in ML'. In: the ACM SIGPLAN International Conference on Functional Programming. pp. 8-17.
....at the University of Oregon. Supported by the National Science Foundation under Grant No. CCR 9733088. 2 Moggi and Sabry subject reduction for a reduction semantics. Unfortunately, there is a bug in the attempted proof, which can be traced to the complicated semantics of lazy state threads (Semmelroth Sabry, 1999). However, Semmelroth and Sabry (1999) are able to adapt the formal developments by Launchbury and Sabry (1997) to prove type safety for monadic encapsulation of strict state. Our goals are similar to those stated by Semmelroth and Sabry (1999) while we differ substantially in the methodology and ....
....by the National Science Foundation under Grant No. CCR 9733088. 2 Moggi and Sabry subject reduction for a reduction semantics. Unfortunately, there is a bug in the attempted proof, which can be traced to the complicated semantics of lazy state threads (Semmelroth Sabry, 1999) However, Semmelroth and Sabry (1999) are able to adapt the formal developments by Launchbury and Sabry (1997) to prove type safety for monadic encapsulation of strict state. Our goals are similar to those stated by Semmelroth and Sabry (1999) while we differ substantially in the methodology and strength of the results. We formalize ....
[Article contains additional citation context not shown here]
Semmelroth, Miley, & Sabry, Amr. (1999). Monadic encapsulation in ML. Pages 8--17 of: the ACM SIGPLAN International Conference on Functional Programming. ACM Press, New York.
No context found.
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In Proceedings of the Fourth ACM SIGPLAN International Conference on Functional Programming, pages 8--17. ACM Press, 1999.
No context found.
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In Proceedings of the fourth ACM SIGPLAN pages 8--17. ACM Press, 1999.
No context found.
M. Semmelroth and A. Sabry. Monadic encapsulation in ML. In International Conference on Functional Programming (ICFP), volume 34(9) of SIGPLAN Notices, pages 8--17, 1999.
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