Monica: a lazy functional programming language written in Prolog

Monica is a lazy functional programming language written in SWI-Prolog. Monica is truly lazy as she uses NOR, WHNF, sharing, and lazy constructors. Monica also provides a Hindley-Milner-style parametric polymorphic type system, higher-order functions, argument pattern matching, list comprehensions, macros, and monads. Rather than implementing a simple lambda calculus reduction engine, Monica attempts to mimic Miranda and Haskell as close as possible by providing a complete set of syntactic and semantic features found in these languages.
Please, type an expression:

or select an example:

Note: a->b denotes a lambda abstraction and f:x denotes application of f to x, also written f(x).

Help pages

Download Monica with programming examples

This page has been automatically generated by the Ctadel system on 2010/7/6 11:04am . Copyright Robert van Engelen