Name: maxsharing Version: 1.1 Copyright: (c) 2013, Jan Rochel Author: Jan Rochel Maintainer: jan@rochel.info Homepage: http://arxiv.org/abs/1401.1460 License: BSD3 License-file: LICENSE Stability: beta Build-type: Custom Synopsis: Maximal sharing of terms in the lambda calculus with letrec Description: 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 . Category: Graphs, Compiler Cabal-Version: >= 1.6 Extra-Source-Files: uuagc_options Data-Files: examples/*.l Executable maxsharing Build-Depends: base < 4.9, base-unicode-symbols, parsec >= 3.0, indentparser, containers, containers-unicode-symbols, mtl, uuagc-cabal, uuagc, HaLeX, process, boxes, fgl Extensions: UnicodeSyntax Other-Modules: Lambda Parser Spanning Main-Is: MaxSharing.hs