Monads and Modularity

This paper argues that the core of modularity problems is an understanding of how individual components of a large system interact with each other, and that this interaction can be described by a layer structure. We propose a uniform treatment of layers based upon the concept of a monad. The combination of different systems can be described by the coproduct of monads.Concretely, we give a construction of the coproduct of two monads and show how the layer structure in the coproduct monad can be used to analyse layer structures in three different application areas, namely term rewriting, denotational semantics and functional programming.

[1]  Philip Wadler,et al.  Combining Monads , 1992 .

[2]  Christoph Lüth,et al.  Monads and Modular Term Rewriting , 1997, Category Theory and Computer Science.

[3]  Donald Sannella,et al.  Specifications in an Arbitrary Institution , 1988, Inf. Comput..

[4]  Christoph Lüth Categorical term rewriting : monads and modularity , 1998 .

[5]  Christoph Lüth,et al.  Algebras, Coalgebras, Monads and Comonads , 2001, CMCS.

[6]  S. Maclane,et al.  Categories for the Working Mathematician , 1971 .

[7]  Gordon D. Plotkin,et al.  Abstract syntax and variable binding , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[8]  Michaël Rusinowitch,et al.  On Termination of the Direct Sum of Term-Rewriting Systems , 1987, Inf. Process. Lett..

[9]  Ralf Hinze,et al.  Haskell 98 — A Non−strict‚ Purely Functional Language , 1999 .

[10]  S. Lane Categories for the Working Mathematician , 1971 .

[11]  Paul Hudak,et al.  Monad transformers and modular interpreters , 1995, POPL '95.

[12]  G. M. Kelly,et al.  A presentation of topoi as algebraic relative to categories or graphs , 1983 .

[13]  Eugenio Moggi,et al.  Computational lambda-calculus and monads , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[14]  G. Kelly A unified treatment of transfinite constructions for free algebras, free monoids, colimits, associated sheaves, and so on , 1980, Bulletin of the Australian Mathematical Society.

[15]  Philip Wadler,et al.  Glasgow Workshop on Functional Programming , 1992 .

[16]  Rod M. Burstall,et al.  Structured Theories in LCF , 1983, CAAP.

[17]  J. Adámek,et al.  Locally Presentable and Accessible Categories: Bibliography , 1994 .