[Haskell] modern language design, stone age tools
alastair at reid-hoffmann.net
Thu Jun 24 05:30:59 EDT 2004
> 2. Use the mapException trick to annotate exceptions as they
> travel up the stack (see Alastair Reid's message).
> (2) requires that you add lots of annotations to your code, so it's not
> entirely satisfactory for that reason.
Would it be possible to generalise ghc's -prof-all mechanism so that
annotations could be added automatically. For example, suppose I have
an annotation function
Debug.Callstack.callstack :: ModuleName -> LineNumber -> a -> a
Then, if I compile with:
ghc -annotate=Debug.Callstack.callstack Foo.hs
then ghc could add
to the import list and transform every top level function body
foo (x:xs) = ..
foo  = ...
foo arg = callstack
"Foo" -- module name
42 -- line number
foo' (x:xs) = ..
foo'  = ..
More information about the Haskell