The error-location package
Error functions that give file location information
$(err "OH NO!") main:Main main.hs:16:1 OH NO!
Notice how it displays package:module file:line:character It exposes the functions err (error), undef (undefined), and trc (Debug.Trace.trace). All of these behave the same as their normal counterpart but also spit out a location.
I also included my favorite helper, debug, which is like trace but just show the value.
debug [1,2,3] DEBUG: [1,2,3] [1,2,3]
And The Template Haskell version.
$(dbg) [1,2,3] DEBUG main:Main main.hs:1:3 [1,2,3] [1,2,3]
See module for a listing of all the functions with short descriptions, and the homepage for some more examples https:github.comgregwebsErrorLocation.hs
|Versions||0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.5, 0.1.5.1, 0.1.5.2, 0.1.5.3, 0.1.5.4, 0.1.5.5|
|Dependencies||base (==4.*), template-haskell [details]|
|Source repository||head: git clone https://github.com/gregwebs/ErrorLocation.hs|
|Uploaded||Tue Aug 2 16:01:57 UTC 2011 by GregWeber|
|Downloads||2136 total (2 in the last 30 days)|
|Status||Docs uploaded by user
Build status unknown [no reports yet]
For package maintainers and hackage trustees