Skip to main content

Coherence of subsumption for monadic types


One approach to give semantics to languages with subtypes is by translation to target languages without subtyping: subtypings AB are interpreted via conversion functions AB. This paper shows how to extend the method to languages with computational effects, using Moggi's computational metalanguage.

Hide All
Aspinall, David & Compagnoni, Adriana B. (2001)Subtyping dependent types. Theor. Comput. Sci. 266 (1–2), 273309.
Benton, Nick, Hughes, John & Moggi, Eugenio. (2002) Monads and effects. In Advanced Lectures from International Summer School on Applied Aemantics, APPSEM 2000, Barthe, Gilles, Dybjer, Peter, Pinto, Luís & Saraiva, João (eds), Lecture Notes in Computer Science, vol. 2395. Springer, Heidelberg, pp. 42122.
Breazu-Tannen, Val, Coquand, Thierry, Gunter, Carl & Scedrov, Andre. (1991) Inheritance as implicit coercion. Inf. Comput. 93 (1), 172221. Reprinted in Gunter and Mitchell (1994.)
Breazu-Tannen, Val, Gunter, Carl A. & Scedrov, Andre. (1990) Computing with coercions. In Proceedings of the ACM Conference on LISP and Functional Programming, Gilles, Kahn (ed). ACM Press, New York, pp. 4460.
Cardelli, Luca. (1988) A semantics of multiple inheritance. Inf. Comput. 76 (2/3), 138164.
Crary, Karl, Kliger, Aleksey & Pfenning, Frank. (2005) A monadic analysis of information flow security with mutable state. J. Funct. Program. 15 (2), 249291.
Curien, Pierre-Louis & Ghelli, Giorgio. (1992) Coherence of subsumption, minimum subtyping and type-checking in F . Math. Struct. Comput. Sci. 2, 5591. Reprinted in Gunter and Mitchell (1994.)
Gunter, Carl A. & Mitchell, John C. (eds). (1994) Theoretical Aspects of Object-Oriented Programming: Types, Semantics, and Language Design. MIT Press, Cambridge, MA.
Levy, Paul Blain. (2004) Call-by-Push-Value. A Functional/Imperative Synthesis. Semantic Structures in Computation, vol. 2. Springer, New York.
Mitchell, John C. (1996) Foundations for Programming Languages. MIT Press, Cambridge, MA.
Moggi, Eugenio. (1990) An Abstract View of Programming Languages. Tech. rept. ECS-LFCS-90-113. Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh.
Moggi, Eugenio. (1991) Notions of computation and monads. Inf. Comput. 93, 5592.
Pierce, Benjamin C. (2002) Types and Programming Languages. MIT Press, Cambridge, MA.
Pierce, Benjamin C. & Steffen, Martin. (1997) Higher-order subtyping. Theor. Comput. Sci. 176 (1–2), 235282.
Reynolds, John C. (1980) Using category theory to design implicit conversions and generic operators. In Proceedings of the Aarhus Workshop on Semantics-Directed Compiler Generation, Jones, Neil D. (ed). Lecture Notes in Computer Science, no. 94. Springer, Heidelberg. Reprinted in Gunter and Mitchell (1994.)
Reynolds, John C. (1991) The coherence of languages with intersection types. In Theoretical Aspects of Computer Software (TACS'91), Ito, Takayasu & Meyer, Albert R. (eds). Lecture Notes in Computer Science, no. 526. Springer, Heidelberg, pp. 675700.
Reynolds, John C. (2003) What do types mean?—From intrinsic to extrinsic semantics. In Programming Methodology, McIver, Annabelle & Morgan, Carroll (eds). Monographs in Computer Science. Springer, New York.
Schwinghammer, Jan. (2005) A typed semantics of higher-order store and subtyping. In Proceedings Ninth Italian Conference on Theoretical Computer Science (ICTCS'05), Coppo, Mario, Lodi, Elena & Pinna, G. Michele (eds). Lecture Notes in Computer Science, vol. 3701. Springer, Heidelberg, pp. 390405.
Tannen, Val, Gunter, Carl A. & Scedrov, Andre. (1989) Denotational Semantics for Subtyping Between Recursive Types. Research Report MS-CIS-89-63/Logic & Computation 12. Department of Computer and Information Science, University of Pennsylvania.
Wadler, Philip & Thiemann, Peter. (2003) The marriage of effects and monads. ACM Trans. Comput. Logic 4 (1), 132.
Zwanenburg, Jan. (1999) Pure type systems with subtyping. In International Conference on Typed Lambda Calculi and Applications (TLCA'99). Lecture Notes in Computer Science, vol. 1581. Springer, Heidelberg, pp. 381396.
Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Journal of Functional Programming
  • ISSN: 0956-7968
  • EISSN: 1469-7653
  • URL: /core/journals/journal-of-functional-programming
Please enter your name
Please enter a valid email address
Who would you like to send this to? *


Full text views

Total number of HTML views: 0
Total number of PDF views: 8 *
Loading metrics...

Abstract views

Total abstract views: 76 *
Loading metrics...

* Views captured on Cambridge Core between September 2016 - 21st March 2018. This data will be updated every 24 hours.