|
ABSTRACT
Gifford and others proposed an effect typing discipline to delimit the scope of computational effects within a program, while Moggi and others proposed monads for much the same purpose. Here we marry effects to monads, uniting two previously separate lines of research. In particular, we show that the type, region, and effect system of Talpin and Jouvelot carries over directly to an analogous system for monads, including a type and effect reconstruction algorithm. The same technique should allow one to transpose any effect system into a corresponding monad system.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Barthe, G., Hatcliff, J., and Thiemann, P. 1998. Monadic type systems: Pure type systems for impure settings (preliminary report). In Proceedings of HOOTS'97. Electronic Notes in Theoretical Computer Science, vol. 10. Elsevier, Amsterdam, The Netherlands.
|
 |
2
|
Nick Benton , Andrew Kennedy , George Russell, Compiling standard ML to Java bytecodes, Proceedings of the third ACM SIGPLAN international conference on Functional programming, p.129-140, September 26-29, 1998, Baltimore, Maryland, United States
|
| |
3
|
|
 |
4
|
Sigbjorn Finne , Daan Leijen , Erik Meijer , Simon Peyton Jones, Calling hell from heaven and heaven from hell, Proceedings of the fourth ACM SIGPLAN international conference on Functional programming, p.114-125, September 27-29, 1999, Paris, France
|
| |
5
|
Gifford, D. K., Jouvelot, P., Lucassen, J. M., and Sheldon, M. A. 1987. FX-87 Reference Manual. Tech. Rep. MIT/LCS/TR-407, MIT Laboratory for Computer Science, Cambridge, MA.
|
 |
6
|
|
| |
7
|
|
| |
8
|
|
 |
9
|
|
| |
10
|
Jouvelot, P. and Gifford, D. K. 1989. Reasoning about continuations with control effects. Tech. Rep. MIT/LCS/TM-378, MIT Laboratory for Computer Science, Cambridge, MA.
|
 |
11
|
|
 |
12
|
|
| |
13
|
Lucassen, J. M. 1987. Types and effects, towards the integration of functional and imperative programming. Tech. Rep. MIT/LCS/TR-408, MIT Laboratory for Computer Science, Cambridge, MA. (Also a Ph.D. thesis, Massachusetts Institute of Technology, Cambridge, MA, 1987.)
|
 |
14
|
|
| |
15
|
Milner, R. 1978. A theory for type polymorphism in programming. J. Comput. Syst. Sci. 17, 348--375.
|
| |
16
|
|
| |
17
|
|
| |
18
|
Mitchell, J. C. 1991. Type inference with simple subtypes, J. Funct. Programm. 1, 3, 245--286.
|
| |
19
|
|
| |
20
|
|
| |
21
|
Moggi, E. and Palumbo, F. 1999. Monadic encapsulation of effects: A revised approach. HOOTS '99: Higher Order Operational Techniques in Semantics. Electronic Notes in Theoretical Computer Science, vol. 26. Elsevier, Amsterdam, The Netherlands.
|
| |
22
|
|
 |
23
|
Simon Peyton Jones , Andrew Gordon , Sigbjorn Finne, Concurrent Haskell, Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.295-308, January 21-24, 1996, St. Petersburg Beach, Florida, United States
[doi> 10.1145/237721.237794]
|
| |
24
|
Peyton Jones, S. and Hughes, J., Eds. 1999. Haskell98, a non-strict, purely functional language. Available at http://www.haskell.org, December 1998.
|
 |
25
|
Simon Peyton Jones , Alastair Reid , Fergus Henderson , Tony Hoare , Simon Marlow, A semantics for imprecise exceptions, Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation, p.25-36, May 01-04, 1999, Atlanta, Georgia, United States
|
 |
26
|
|
| |
27
|
Plotkin, G. 1975. Call-by-name, call-by-value, and the λ-calculus. Theoret. Comput. Sci. 1, 125--159.
|
 |
28
|
|
 |
29
|
|
| |
30
|
Talpin, J.-P. 1993. Theoretical and practical aspects of type and effect inference. Ph.D. thesis, Ecole des Mines de Paris and University Paris VI, Paris, France.
|
| |
31
|
Talpin, J.-P. and Jouvelot, P. 1992. Polymorphic type, region, and effect inference. J. Funct. Programm.2, 3 (July), 245--271.
|
| |
32
|
|
| |
33
|
Tofte, M. 1987. Operational semantics and polymorphic type inference. Ph.D. thesis, University of Edinburgh, Edinburgh, Scotland.
|
 |
34
|
|
 |
35
|
|
| |
36
|
|
 |
37
|
|
 |
38
|
|
| |
39
|
|
| |
40
|
Wadler, P. 1995. How to declare an imperative (Invited talk). International Logic Programming Symposium (Portland, OR). MIT Press, Cambridge, MA.
|
 |
41
|
|
| |
42
|
|
| |
43
|
|
| |
44
|
|
REVIEW
"Manuel Ojeda Aciego : Reviewer"
A unified approach to two previous lines of research based on the study of computational effects is presented in this paper. These lines are, respectively, the use of effect typing and the use of monads. The first author conjectured as to wh
more...
|