Combining Monads

  • David J. King
  • Philip Wadler
Part of the Workshops in Computing book series (WORKSHOPS COMP.)


Monads provide a way of structuring functional programs. Most real applications require a combination of primitive monads. Here we describe how some monads may be combined with others to yield a combined monad.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    M. Barr and C. Wells, Toposes, Triples, and Theories. Springer Verlag, 1985.Google Scholar
  2. [2]
    M. Barr and C. Wells, Category Theory for Computing Science. Prentice Hall, 1990.Google Scholar
  3. [3]
    R. Bird, An Introduction to the Theory of Lists. In Logic of Programming and Calculi of Discrete Design, Springer Verlag, 1987.Google Scholar
  4. [4]
    P. Hudak, S. Peyton Jones and P. Wadler, editors, Report on the functional programming language Haskell, Version 1.2, SIGPLAN Notices, Vol. 27, No. 5, May 1992.Google Scholar
  5. [5]
    L. Meertens, Algorithmics - towards programming as a mathematical activity. In J. deBakker, M. Hazewinkel and L. Lenstra, editors, CWI Symposium on Mathematics and Computer Science, Vol. 1, CWI monographs, North Holland, 1986.Google Scholar
  6. [6]
    E. Moggi, Computational lambda-calculus and monads. In IEEE Symposium on Logic in Computer Science, June 1989.Google Scholar
  7. [7]
    M. Spivey, A Categorical Approach to the Theory of Lists. In Mathematics of Program Construction, LNCS 375, Springer Verlag, 1989.Google Scholar
  8. [8]
    P. Wadler, How to Replace Failure by a List of Successes. In Proceedings of Functional Programming and Computer Architecture, Springer-Verlag, LNCS 201, September 1985.Google Scholar
  9. [9]
    P. Wadler, Comprehending Monads. In ACM Conference of Lisp and Functional Programming, June 1990.Google Scholar
  10. [10]
    P. Wadler, The essence of functional programming. In 19’th ACM Symposium on Principles of Programming Languages, January 1992.Google Scholar

Copyright information

© British Computer Society 1993

Authors and Affiliations

  • David J. King
    • 1
  • Philip Wadler
    • 1
  1. 1.Department of Computing ScienceUniversity of GlasgowGlasgowScotland, UK

Personalised recommendations