monadloc-0.7: monadloc.cabal
name: monadloc
version: 0.7
Cabal-Version: >= 1.6
build-type: Simple
license: PublicDomain
author: Pepe Iborra
maintainer: pepeiborra@gmail.com
homepage: http://github.com/pepeiborra/monadloc
synopsis: A class for monads which can keep a monadic call trace
category: Control, Monads
stability: provisional
description:
This package defines a class for monads which can keep a monadic call trace.
.
* See the blog post <http://pepeiborra.posterous.com/monadic-stack-traces-that-make-a-lot-of-sense> for more information.
.
A preprocessor is available (see the package monadloc-pp) which inserts calls
to "Control.Monad.Loc.withLoc" before every monadic statement in a module.
To invoke the preprocessor, add the pragma @OPTIONS_GHC -F -pgmF MonadLoc@ at the top of your Haskell files together with an import for the "Control.Monad.Loc" module
.
This package provides no implementation of the "Control.Monad.Loc.MonadLoc" interface.
Currently the only package that does so is @control-monad-exception@,
but any other package can implement it and provide monadic call traces.
/Changes/:
.
* 0.7 - Extracted Template Haskell macro to separate module to allow @Control.Monad.Loc@ to be Safe. (thanks to Deian Stefan)
.
* 0.6 - Extracted the preprocessor to a separate package @monadloc-pp@ to minimize the set of dependencies.
Library
buildable: True
build-depends: base >= 4 && < 5, template-haskell, transformers
ghc-options: -Wall -fno-warn-orphans
exposed-modules:
Control.Monad.Loc
Control.Monad.Loc.TH
Control.Monad.Loc.Transformers
source-repository head
type: git
location: git://github.com/pepeiborra/monadloc.git