The SourceGraph package
Statically analyse Haskell source code using graph-theoretic techniques. Sample reports can be found at: http://code.haskell.org/~ivanm/Sample_SourceGraph/SampleReports.html
To use SourceGraph, call it as either:
Or, if your project doesn't use Cabal, then there is limited support for using an overall module from your program/library:
Note that the Cabal method is preferred, as it is better able to determine the project name and exported modules (when passing a Haskell file to SourceGraph, it uses that module's name as the overall name of project and assumes that it is the only exported module; as such, it works better for programs than libraries).
Whichever way you run SourceGraph, it then creates a SourceGraph subdirectory in the same directory as the file that was passed to it, and within that subdirectory creates the analysis report in Foo.html.
SourceGraph is still experimental in terms of its ability to parse and properly understand Haskell source code and in the types of analyses it performs.
|Versions||0.1, 0.2, 0.3, 0.5.0.0, 0.5.1.0, 0.5.2.0, 0.5.5.0, 0.6.0.0, 0.6.0.1, 0.6.0.2, 0.6.1.1, 0.7.0.0, 0.7.0.1, 0.7.0.2, 0.7.0.3, 0.7.0.4, 0.7.0.5|
|Dependencies||base (4.*), Cabal (≥1.8 & <1.17), containers, directory, fgl (≥126.96.36.199 & <5.5), filepath, Graphalyze (0.14.*), graphviz (≥29188.8.131.52 & <2999.17), haskell-src-exts (≥1.5.0 & <1.14.0), mtl, multiset, random|
|Copyright||(c) Ivan Lazar Miljenovic|
|Author||Ivan Lazar Miljenovic|
|Source repository||darcs get http://code.haskell.org/SourceGraph|
|Upload date||Thu Feb 14 12:00:31 UTC 2013|