skip to main content
research-article

Parametric effect monads and semantics of effect systems

Published:08 January 2014Publication History
Skip Abstract Section

Abstract

We study fundamental properties of a generalisation of monad called parametric effect monad, and apply it to the interpretation of general effect systems whose effects have sequential composition operators. We show that parametric effect monads admit analogues of the structures and concepts that exist for monads, such as Kleisli triples, the state monad and the continuation monad, Plotkin and Power's algebraic operations, and the categorical ┬┬-lifting. We also show a systematic method to generate both effects and a parametric effect monad from a monad morphism. Finally, we introduce two effect systems with explicit and implicit subeffecting, and discuss their denotational semantics and the soundness of effect systems.

Skip Supplemental Material Section

Supplemental Material

d3_right_t7.mp4

References

  1. R. M. Amadio and P.-L. Curien. Domains and lambda-calculi. Cambridge University Press, New York, NY, USA, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. R. Atkey. Parameterised notions of computation. J. Funct. Program., 19(3--4):335--376, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. G. Barthe, P. Dybjer, L. Pinto, and J. Saraiva, editors. Applied Semantics, International Summer School, APPSEM 2000, Caminha, Portugal, September 9-15, 2000, Advanced Lectures, volume 2395 of LNCS. Springer, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. N. Benton and P. Buchlovsky. Semantics of an effect analysis for exceptions. In Proceedings of 2007 ACM SIGPLAN International Workshop on Types in Languages Design and Implementation, pages 15--26. ACM, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. N. Benton, J. Hughes, and E. Moggi. Monads and effects. In Barthe et al. {3}, pages 42--122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. N. Benton, A. Kennedy, L. Beringer, and M. Hofmann. Relational semantics for effect-based program transformations with dynamic allocation. In Proceedings of the 9th International ACM SIGPLAN Conference on Principles and Practice of Declarative Programming, pages 87--96. ACM, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. N. Benton, A. Kennedy, L. Beringer, and M. Hofmann. Relational semantics for effect-based program transformations: higher-order store. In Proceedings of the 11th International ACM SIGPLAN Conference on Principles and Practice of Declarative Programming, pages 301--312. ACM, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. N. Benton, A. Kennedy, M. Hofmann, and L. Beringer. Reading, writing and relations. In Programming Languages and Systems, 4th Asian Symposium, APLAS 2006, Proceedings, volume 4279 of LNCS, pages 114--130. Springer, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. A. Filinski. Representing layered monads. In Proc. POPL 1999, pages 175--188, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J.-C. Filliǎtre. A theory of monads parameterized by effects. Research Report 1367, LRI, Université Paris Sud, November 1999.Google ScholarGoogle Scholar
  11. B. Jacobs. Categorical Logic and Type Theory. Elsevier, 1999.Google ScholarGoogle Scholar
  12. B. Jacobs. Coalgebraic trace semantics for combined possibilitistic and probabilistic systems. Electr. Notes Theor. Comput. Sci., 203(5):131--152, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. O. Kammar and G. D. Plotkin. Algebraic foundations for effectdependent optimisations. In Proceedings of the 39th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 349--360. ACM, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. S. Katsumata. A semantic formulation of ΤΤ-lifting and logical predicates for computational metalanguage. In Proc. CSL '05, volume 3634 of LNCS, pages 87--102. Springer, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. S. Katsumata. Relating computational effects by ΤΤ-lifting. Inf. Comput., 222:228--246, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. S. Katsumata and T. Sato. Preorders on monads and coalgebraic simulations. In Foundations of Software Science and Computation Structures - 16th International Conference, Proceedings, volume 7794 of LNCS, pages 145--160. Springer, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. G.M. Kelly and G. Janelidze. A note on actions of a monoidal category. Theory and Applications of Categories, 9(4):61--91, 2001.Google ScholarGoogle Scholar
  18. A. Kock. Strong functors and monoidal monads. Archiv der Mathe-matik, 23(1):113--120, 1972.Google ScholarGoogle ScholarCross RefCross Ref
  19. S. Lack and R. Street. The formal theory of monads ii. Journal of Pure and Applied Algebra, 175(1-3):243--265, 2002.Google ScholarGoogle ScholarCross RefCross Ref
  20. T. Leinster. Higher Operads, Higher Categories. London Mathematical Society Lecture Note Series. Cambridge University Press, 2004.Google ScholarGoogle Scholar
  21. P. B. Levy. Call-by-Push-Value A Functiona/Imperative Synthesis. Springer, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. J. M. Lucassen and D. K. Gifford. Polymorphic effect systems. In Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 47--57. ACM, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. S. MacLane. Categories for the Working Mathematician (Second Edition), volume 5 of Graduate Texts in Mathematics. Springer, 1998.Google ScholarGoogle Scholar
  24. P.-A. Mellies. Parametric monads and enriched adjunctions. Manuscript.Google ScholarGoogle Scholar
  25. P.-A. Mellies. The parametric continuation monad. Mathematical Structures in Computer Science, Festschrift in honor of Corrado Böhm for his 90th birthday, 2013.Google ScholarGoogle Scholar
  26. E. Moggi. Notions of computation and monads. Inf. Comput., 93(1):55--92, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. F. Nielson and H. R. Nielson. From CML to its process algebra. Theor. Comput. Sci., 155:179--219, February 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. F. Nielson, H. R. Nielson, and C. Hankin. Principles of program analysis (2. corr. print). Springer, 2005.Google ScholarGoogle Scholar
  29. T. Petricek, D. A. Orchard, and A. Mycroft. Coeffects: Unified static analysis of context-dependence. In Automata, Languages, and Programming - 40th International Colloquium, Proceedings, volume 7966 of LNCS, pages 385--397. Springer, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. G. Plotkin and J. Power. Algebraic operations and generic effects. Applied Categorical Structures, 11(1):69--94, 2003.Google ScholarGoogle ScholarCross RefCross Ref
  31. L. Solberg, H. R. Nielson, and F. Nielson. Strictness and totality analysis. In Static Analysis, volume 864 of LNCS, pages 408--422. Springer Berlin Heidelberg, 1994.Google ScholarGoogle ScholarCross RefCross Ref
  32. J.-P. Talpin and P. Jouvelot. The type and effect discipline. Inf. Comput., 111(2):245--296, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. R. Tate. The sequential semantics of producer effect systems. In The 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 15--26. ACM, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. J. Thamsborg and L. Birkedal. A kripke logical relation for effectbased program transformations. In Proceeding of the 16th ACM SIG- PLAN International Conference on Functional Programming, pages 445--456. ACM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. M. Tofte and J.-P. Talpin. Implementation of the typed call-by-value lambda-calculus using a stack of regions. In Proceedings of the 21st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 188--201, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. D. Varacca and G. Winskel. Distributing probability over nondeterminism. Mathematical Structures in Computer Science, 16(1):87--113, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. P. Wadler. The marriage of effects and monads. In Proceedings of the third ACM SIGPLAN International Conference on Functional Programming (ICFP '98), pages 63--74. ACM, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. P.Wadler and P. Thiemann. The marriage of effects and monads. ACM Trans. Comput. Log., 4(1):1--32, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Parametric effect monads and semantics of effect systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!