[Haskell-cafe] ANNOUNCE: SourceGraph-

Ivan Lazar Miljenovic ivan.miljenovic at gmail.com
Sun Jan 10 06:32:51 EST 2010

I've just uploaded a new version that works with haskell-src-exts-1.6.0
(all it needed was to increase the upper bound in the cabal file! \o/).

On another note, anyone know why Niklas Broberg hasn't been making any
release statements recently to say what the changes are, etc. for

Ivan Lazar Miljenovic <ivan.miljenovic at gmail.com> writes:

> I realised soon after I sent the announcement email that there was a bug
> in one of the new "subtle" features that I didn't list, namely the
> background shading of directories in import visualisation.  As such,
> SourceGraph contains this fix.
> There were also two other features in that I forgot to mention:
> * SourceGraph will (well, should; I haven't managed to come across a
>   situation where it occurs anyway) no longer throw a fit if Graphviz
>   throws an error when visualising a graph; instead it will just put an
>   error message into the generated report.
> * The generated Dot code is also saved in the SourceGraph/graphs/
>   subdirectory, so you can tweak the call graphs of your programs.
> Ivan Lazar Miljenovic <ivan.miljenovic at gmail.com> writes:
>> I'm pleased to announce the latest releases of SourceGraph [1] and
>> Graphalyze [2].
>> [1]: http://hackage.haskell.org/package/SourceGraph
>> [2]: http://hackage.haskell.org/package/Graphalyze
>> SourceGraph is a program that performs static code analysis on Haskell
>> projects on the by applying graph theoretic techniques to the project's
>> call graph.  Graphalyze is a library for analysing discrete data using
>> graph theory, and as such performs the heavy lifting for SourceGraph.
>> Sample analysis reports generated by SourceGraph are available at
>> http://code.haskell.org/~ivanm/Sample_SourceGraph/SampleReports.html .
>> I will also be demoing SourceGraph at PEPM [3] in Madrid on 19 January.
>> [3]: http://www.program-transformation.org/PEPM10/
>> Changes since the previous version include:
>> * Now supports "implicitly exported" entities (as requested by Curt
>>   Sampson).  This includes instantiated class methods from other
>>   modules and functions, etc. that start with an underscore (see
>>   http://www.haskell.org/ghc/docs/latest/html/users_guide/options-sanity.html
>>   for more information).
>> * All inaccessible entities are now reported, not just those that were
>>   root nodes in the call graph.
>> * Edges are now colour-coded based upon whether they are part of a
>>   clique, cycle or a chain.
>> * Level-based analyses: visualise how deep an entity is from those
>>   exported entities.
>> * A re-done TODO that lists in detail what is planned for SourceGraph.
>> * Lots of under-the-hood changes that don't sound as interesting as the
>>   above :-(

Ivan Lazar Miljenovic
Ivan.Miljenovic at gmail.com

More information about the Haskell-Cafe mailing list