ixdopp: A preprocessor for expanding "ixdo" notation for indexed monads

[ bsd3, language, program, source-tools ] [ Propose Tags ]

This preprocessor expands a Haskell program using "ixdo" notation into a Haskell program using the indexed monad bind operator (>>>=). It also serves as an example for the preprocessor-tools package.

While GHC 6.10 can now expand do-notation when (>>=) is rebound at a non-standard type, this makes it difficult to use do-notation for both monads and custom monad-like structures in the same compilation module. This preprocessor makes it easy to use do-like syntax for indexed monads while retaining "do" for monads.

If installed in ~.cabal, then ~.cabal/bin must be in the path for GHC to find it from a -pgmF flag.


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1, 0.1.1, 0.1.2, 0.1.3
Dependencies base (>=4 && <5), preprocessor-tools, syb (<1) [details]
License BSD-3-Clause
Copyright 2011, Jesse A. Tov
Author Jesse A. Tov <tov@ccs.neu.edu>
Maintainer tov@ccs.neu.edu
Category Source-tools, Language
Home page http://www.ccs.neu.edu/~tov/session-types
Uploaded by JesseTov at 2012-12-08T20:14:50Z
Reverse Dependencies 1 direct, 0 indirect [details]
Executables ixdopp
Downloads 3062 total (10 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-23 [all 7 reports]