packages feed

maxsharing-1.0.2: maxsharing.cabal

Name:           maxsharing
Version:        1.0.2
Copyright:      (c) 2013, Jan Rochel
Author:         Jan Rochel
Maintainer:     jan@rochel.info
Homepage:       http://rochel.info/maxsharing/
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; reads back a
                lambda-letrec term which has the same unfolding as the original
                term, but exhibits maximal sharing.
                If executable "dot" from graphviz is available, the graphs are
                displayed (tested for Linux).
                The approach is described in a technical report:
                http://arxiv.org/abs/1401.1460
Category:       Graphs, Compiler
Cabal-Version:  >= 1.6
Extra-Source-Files: uuagc_options
Data-Files:     examples/*.l

Executable maxsharing
  Build-Depends:
    base < 4.8,
    base-unicode-symbols < 0.3,
    parsec < 2.2,
    IndentParser < 0.3,
    containers < 0.6,
    containers-unicode-symbols < 0.4,
    mtl < 2.3,
    uuagc-cabal < 1.1,
    uuagc >= 0.9.50.2,
    HaLeX >= 1.2.1,
    boxes < 0.2,
    process < 1.2
  Extensions: UnicodeSyntax
  Other-Modules:  Lambda Parser Spanning
  Main-Is: MaxSharing.hs