Name:			compdata-automata
Version:		0.9
Synopsis:            	Tree automata on Compositional Data Types
Description:
  This library extends the @compdata@ package with advanced recursion
  schemes derived from tree automata. These recursion schemes allow
  for a higher degree of modularity and make it possible to apply
  fusion. See /Modular Tree Automata/ (Mathematics of Program
  Construction, 263-299, 2012,
  <http://dx.doi.org/10.1007/978-3-642-31113-0_14>) and /Programming
  Macro Tree Transducers/ (Workshop on Generic Programming, 61-72,
  2013, <http://dx.doi.org/10.1145/2502488.2502489>).


Category:               Generics
License:                BSD3
License-file:           LICENSE
Author:                 Patrick Bahr
Maintainer:             paba@di.ku.dk
Build-Type:             Simple
Cabal-Version:          >=1.9.2
bug-reports:            https://github.com/pa-ba/compdata-automata/issues

extra-source-files:
  -- benchmark files
  benchmark/*.hs
  benchmark/DataTypes/*.hs
  benchmark/Functions/*.hs
  -- example files
  examples/Examples/Automata/*.hs

library
  Exposed-Modules:      Data.Comp.Automata
                        Data.Comp.MacroAutomata
  Build-Depends:	base >= 4.7, base < 5, containers, compdata == 0.9.*, projection
  hs-source-dirs:	src
  ghc-options:          -W


Benchmark macro
  Type:                 exitcode-stdio-1.0
  Main-is:		Benchmark.hs
  hs-source-dirs:	src benchmark
  ghc-options:          -W -O2
  -- Disable short-cut fusion rules in order to compare optimised and unoptimised code.
  cpp-options:          -DNO_RULES
  Build-Depends:        base >= 4.7, base < 5, containers, compdata == 0.9.*, projection, criterion

source-repository head
  type:     git
  location: https://github.com/pa-ba/compdata-automata