|
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 systems 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.
 |
BKR98
|
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
|
| |
BCGS91
|
Val Breazu-Tannen , Thierry Coquand , Carl A. Gunter , Andre Scedrov, Inheritance as implicit coercion, Theoretical aspects of object-oriented programming: types, semantics, and language design, MIT Press, Cambridge, MA, 1994
|
 |
GL86
|
|
| |
GJLS87
|
D.K. Gifford, P. Jouvelot, J. M. Lucassen, and M. A. Sheldon, FX-87 Reference Manual, Technical report MIT/LCS/TR-407, MiT Laboratory for Computer Science, September 1987.
|
| |
GJS96
|
|
 |
HD94
|
|
| |
JG89
|
P. Jouvelot and D. K. Gifford, Reasoning about continuations with control effects, Technical report MIT/LCS/TM-378, MIT Laboratory for Computer Science, January 1989.
|
| |
Jon95
|
|
 |
LP94
|
|
| |
Luc87
|
J. M. Lucassen, Types and effects, towards the integration of functional and imperative programming, Ph.D. Thesis, Technical report MIT/LCS/TR-408, MIT Laboratory for Computer Science, August 1987.
|
| |
Mil78
|
R. Milner, A theory for type polymorphism in prog-ramming, Journal of Computer and Systems Science, 17:348-375, 1978.
|
| |
Mit91
|
J. C. Mitchell, Type inference with simple subtypes, Journal of Functional Programming, 1(3):245- 286, 1991.
|
| |
Mit96
|
|
| |
MTH90
|
|
| |
MTHM97
|
|
| |
Mog89
|
|
| |
Mog91
|
|
| |
PH97
|
J. Peterson and K. Hammond, editors, Haskell 1.4, a non-strict, purely functional language, Technical report, Yale University, April 1997.
|
| |
Plo75
|
G. Plotkin, Call-by-name, call-by-value, and the A-calculus, Theoretical Computer Science, 1:125-159, 1975.
|
 |
PW93
|
|
 |
SW97
|
|
| |
TJ92
|
J.-P. Talpin and P. Jouvelot, Polymorphic type, region, and effect inference, Journal of Functional Programming, 2(3):245-271, July 1992.
|
| |
TJ94
|
|
| |
Tof87
|
M. Torte, Operational semantics and polymorphic type inference, PhD Thesis, University of Edinburgh, 1987.
|
 |
TB98
|
|
| |
Tol98
|
|
 |
Wad90
|
|
 |
Wad92
|
|
| |
Wad93
|
|
| |
Wad95
|
P. Wadler, How to declare an imperative (Invited talk), International Logic Programming Symposium, Portland, Oregon, MiT Press, December 1995.
|
| |
WF94
|
|
| |
Wri92
|
|
| |
Wri95
|
|
CITED BY 25
|
|
|
|
|
|
|
|
Martín Abadi , Anindya Banerjee , Nevin Heintze , Jon G. Riecke, A core calculus of dependency, Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.147-160, January 20-22, 1999, San Antonio, Texas, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|