@hackage / maxsharing

Maximal sharing of terms in the lambda calculus with letrec

Latest1.1

About

Metadata

  • Last updated , by JanRochel
  • License BSD-3-Clause
  • Categories Mathematics, Compilers and Interpreters
  • Maintained by: jan@rochel.info

  • Lottery factor: 0

Links

Installation

This package uses the Custom cabal build type

Readme

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 http://dx.doi.org/10.1145/2628136.2628148 and an extended version thereof http://arxiv.org/abs/1401.1460.