Abstract
We show how one can reason about free monads using their universal properties rather than any concrete implementation. We introduce a graphical, two-dimensional calculus tailor-made to accommodate these properties.
- R. Atkey and P. Johann. Interleaving data and effects. Journal of Functional Programming, 25:e20 (44 pages), 2015.Google Scholar
- M. Barr. Coequalizers and free triples. Mathematische Zeitschrift, 116(4): 307–322, 1970.Google Scholar
Cross Ref
- J. W. Barrett, C. Meusburger, and G. Schaumann. Gray categories with duals and their diagrams, 2016. To appear in Journal of Differential Geometry. F. Bartels. On Generalised Coinduction and Probabilistic Specification Formats: Distributive Laws in Coalgebraic Modelling. PhD thesis, Vrije Universiteit Amsterdam, 2004.Google Scholar
- J. Beck. Distributive laws. In B. Eckmann, editor, Seminar on Triples and Categorical Homology Theory, volume 80 of Lecture Notes in Mathematics, pages 119–140. Springer Berlin Heidelberg, 1969.Google Scholar
- J. M. Beck. Triples, Algebras and Cohomology. PhD thesis, Columbia University, 1967.Google Scholar
- R. Bird and O. de Moor. Algebra of Programming. Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1997. Google Scholar
Digital Library
- R. S. Bird and L. Meertens. Two exercises found in a book on algorithmics. In L. Meertens, editor, Program Specification and Transformation, pages 451–457. North-Holland, 1987. Google Scholar
Digital Library
- G. Brady and T. Trimble. A string diagram calculus for predicate logic and C. S. Peirces system beta, 1998.Google Scholar
- M. M. Fokkinga. Law and Order in Algorithmics. PhD thesis, University of Twente, Enschede, February 1992.Google Scholar
- R. Hinze and D. Marsden. Equational reasoning with lollipops, forks, cups, caps, snakes, and speedometers. Journal of Logical and Algebraic Methods in Programming, pages –, 2016. In press. M. Hyland, G. D. Plotkin, and J. Power. Combining effects: Sum and tensor. Theor. Comput. Sci., 357(1-3):70–99, 2006. Google Scholar
Digital Library
- A. Joyal, R. Street, and D. Verity. Traced monoidal categories. Mathematical Proceedings of the Cambridge Philosophical Society, 119:447–468, 1996.Google Scholar
Cross Ref
- G. M. Kelly. A unified treatment of transfinite constructions for free algebras, free monoids, colimits, associated sheaves, and so on. Bulletin of the Australian Mathematical Society, 22:1–83, 8 1980. ISSN 1755-1633.Google Scholar
Cross Ref
- J. Kock, A. Joyal, M. Batanin, and J.-F. Mascari. Polynomial functors and opetopes. Advances in Mathematics, 224:2690–2737, 2010.Google Scholar
Cross Ref
- C. Lüth and N. Ghani. Composing monads using coproducts. In M. Wand and S. L. P. Jones, editors, Proceedings of the Seventh ACM SIGPLAN International Conference on Functional Programming (ICFP ’02), Pittsburgh, Pennsylvania, USA, October 4-6, 2002. Google Scholar
Digital Library
- , pages 133–144. ACM, 2002.Google Scholar
- ISBN 1-58113-487-8. doi: 10.1145/581478.581492.Google Scholar
- E. Meijer, M. Fokkinga, and R. Paterson. Functional programming with bananas, lenses, envelopes and barbed wire. In Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture, pages 124–144, New York, NY, USA, 1991. Springer-Verlag New York, Inc. Google Scholar
Digital Library
- E. Moggi. An Abstract View of Programming Languages. Technical report, Edinburgh University, 1989.Google Scholar
- T. Schrijvers, N. Wu, B. Desouter, and B. Demoen. Heuristics entwined with handlers combined. In PPDP 2014 : proceedings of the 16th international symposium on principles and practice of declarative programming, page 12. Association for Computing Machinery (ACM), 2014. Google Scholar
Digital Library
- P. Selinger. A survey of graphical languages for monoidal categories. In B. Coecke, editor, New Structures for Physics, pages 289–355. Springer Berlin Heidelberg, Berlin, Heidelberg, 2011.Google Scholar
Index Terms
String diagrams for free monads (functional pearl)
Recommendations
String diagrams for free monads (functional pearl)
ICFP 2016: Proceedings of the 21st ACM SIGPLAN International Conference on Functional ProgrammingWe show how one can reason about free monads using their universal properties rather than any concrete implementation. We introduce a graphical, two-dimensional calculus tailor-made to accommodate these properties.
Monads and distributive laws for Rota-Baxter and differential algebras
In recent years, algebraic studies of the differential calculus and integral calculus in the forms of differential algebra and Rota-Baxter algebra have been merged together to reflect the close relationship between the two calculi through the First ...
Complete iterativity for algebras with effects
CALCO'09: Proceedings of the 3rd international conference on Algebra and coalgebra in computer scienceCompletely iterative algebras (cias) are those algebras in which recursive equations have unique solutions. In this paper we study complete iterativity for algebras with computational effects (described by a monad). First, we prove that for every ...







Comments