visual-graphrewrite: Visualize the graph-rewrite steps of a Haskell program

[ bsd3, development, library, program ] [ Propose Tags ]

Visualize the graph-rewrite steps of a Haskell program. Currently it only shows the right-hand-sides of rewrite rules (function alternatives).

[Skip to Readme]


  • GraphRewrite
    • Internal
      • GraphRewrite.Internal.Convert
      • GraphRewrite.Internal.DeltaFunctions
      • GraphRewrite.Internal.Rename
      • GraphRewrite.Internal.Rewrite
      • GraphRewrite.Internal.RewriteApp
      • GraphRewrite.Internal.RewriteTypes
      • GraphRewrite.Internal.SimpleHaskell


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.3, 0.3.1, 0.3.2,
Dependencies base (>= && <4.2), cairo (>=0.10.0), containers (>=, directory (>=, fgl (>= && <5.5), glade (>=0.10.0), graphviz (>=2999.1.0 && <3000), gtk (>=0.10.0), haskell-src (>=, ipprint (>=0.3), isevaluated (>=0.3), lazysmallcheck (>=0.3), parallel (>=, pretty (>=, process (>=, strict-concurrency (>=0.2.1), svgcairo (>=0.10.0), value-supply (>=0.5) [details]
License BSD-3-Clause
Author Zsolt Dollenstein
Category Development
Home page
Bug tracker
Uploaded by ZsoltDollenstein at 2010-06-07T20:03:35Z
Reverse Dependencies 1 direct, 0 indirect [details]
Executables visual-graphrewrite
Downloads 3091 total (16 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-29 [all 6 reports]

Readme for visual-graphrewrite-

[back to package description]
This tool intended to help the graph rewriting process of Haskell expressions.

This is the initial/experimental version.
 ./rewrite <Haskell source file>

- The program reads the source, which can contain only simple function definitions.
  The following definitions may be used: (++), div, mod, eqInt, not, Cons, Nil, succ, True, False, sin.
- The source is converted into a graph rewrite system.
- The program opens a window.
  Press space to see the right-hand-sides of the graph rewrite rules.

Short term plans (this version is expected at the end of May):
- Allow data declarations.
- Allow more built-in functions.

Future plans:
- Allow type classes.
- Allow module imports.
- Allow partial applications and slices.
- Better handling of higher order functions.
- Pattern parsing improvements.
- Read the Prelude.
- Extend to work with any Haskell 98 source file.
- Control the graph rewrite process (control over which functions are atomic).
- Control the visualization of the graph (some parts will be folded).