Popularity
9.0
Stable
Activity
4.3
-
79
9
16

Monthly Downloads: 129
Programming language: Haskell
License: BSD 3-clause "New" or "Revised" License
Tags: Control     Monads     Operational    
Add another 'operational' Package

README

Operational is a tiny library for implementing monads by specifying the primitive instructions and their operational semantics. The monad laws will hold automatically. It can also be used to define monad transformers, and the lifting laws are, again, automatic.

It is based on the article The Operational Monad Tutorial, published in Issue 15 of The Monad.Reader.

For more, see the project website.


Sources and inspiration for this library include Chuan-kai Lin's unimo paper, John Hughes 95, and Ryan Ingram's MonadPrompt package.