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]

Modules

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

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.3, 0.3.1, 0.3.2, 0.4.0.1
Dependencies base (>=4.1.0.0), cairo (>=0.10.0), containers (>=0.2.0.0), directory (>=1.0.0.3), fgl (>=5.4.2.2), gtk (>=0.10.0), haskell-src (>=1.0.1.2), ipprint (>=0.3), lazysmallcheck (>=0.3), parallel (>=1.1.0.1), pretty (>=1.0.1.0), process (>=1.0.1.1), strict-concurrency (>=0.2.1), svgcairo (>=0.10.0), value-supply (>=0.5) [details]
License BSD-3-Clause
Author Zsolt Dollenstein
Maintainer zsol@elte.hu
Category Development
Home page http://github.com/zsol/visual-graphrewrite/
Bug tracker http://github.com/zsol/visual-graphrewrite/issues
Uploaded by ZsoltDollenstein at 2009-05-09T19:15:59Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Executables visual-graphrewrite
Downloads 3096 total (11 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 2017-01-01 [all 7 reports]

Readme for visual-graphrewrite-0.3.2

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

This is the initial/experimental version.
Usage:
 ./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):
- Show the graph rewrite process instead of the rhs of rewrite rules.
- Allow tuples and lists.
- Allow data declarations.
- Allow more built-in functions.
- User defined start expression for the graph reduction.
- To be usable as a library.

Plans for the final version:
- Allow type classes.
- Allow module imports.
- 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).