Implementation of difficult monads made easy with operational semantics. http://wiki.haskell.org/Operational

Version on this page:
LTS Haskell 11.1:
Stackage Nightly 2018-03-23:
Latest on Hackage:

See all snapshots operational appears in

BSD3 licensed by Heinrich Apfelmus
Maintained by Heinrich Apfelmus <apfelmus quantentunnel de>

Module documentation for

This library makes it easy to implement monads with tricky control flow.

This is useful for: writing web applications in a sequential style, programming games with a uniform interface for human and AI players and easy replay capababilities, implementing fast parser monads, designing monadic DSLs, etc.

See the project homepage http://wiki.haskell.org/Operational for a more detailed introduction and features.

Related packages:


Changelog for the operational package -- Maintenance release.

  • Update references to other packages.
  • Modernize .cabal file. -- Maintenance release.

  • Restrict dependencies to ensure GHC >= 7.2. -- Maintenance release.

  • Minor fixes to documentation and examples -- Maintenance release.

  • Bump mtl dependency to allow 2.3 -- Maintenance release.

  • Bump mtl dependency to allow 2.2 -- Maintenance release.

  • added instance for MonadReader class
  • clean up documentation -- Feature release.

  • add utility function interpretWithMonad -- Maintenance release.

  • minor change: eta-reduce Program and ProgramView type synonyms -- Maintenance release.

  • moved project repository to github -- Feature release.

  • changed name of view type to ProgramView
  • added instances for mtl classes
  • new function liftProgram to embed Program in ProgramT
  • new example TicTacToe.hs
  • various documentation updates

  • initial release
comments powered byDisqus