maxsharing: Maximal sharing of terms in the lambda calculus with letrec

[ bsd3, compiler, graphs, program ] [ Propose Tags ]

Parses a lambda-letrec term; transforms it into a first-order term graph representation; minimises the graph by bisimulation collapse; reads back a lambda-letrec term which has the same unfolding as the original term but is more (maximally) compact. If executable "dot" from graphviz is available, the graphs are displayed (tested for Linux). The approach is described in an ICFP-paper and an extended version thereof

Versions [faq] 1.0, 1.0.2, 1.0.3, 1.1
Dependencies base (<4.9), base-unicode-symbols, boxes, containers, containers-unicode-symbols, fgl, HaLeX, indentparser, mtl, parsec (>=3.0), process, uuagc, uuagc-cabal [details]
License BSD-3-Clause
Copyright (c) 2013, Jan Rochel
Author Jan Rochel
Category Graphs, Compiler
Home page
Uploaded by JanRochel at Mon Oct 17 18:30:12 UTC 2016
Distributions NixOS:1.1
Executables maxsharing
Downloads 1608 total (63 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2016-11-14 [all 3 reports]


Maintainer's Corner

For package maintainers and hackage trustees