Name: comptrans Version: 0.1.0.4 Synopsis: Description: License: BSD3 License-File: LICENSE Author: James Koppel Maintainer: James Koppel Synopsis: Automatically converting ASTs into compositional data types Description: Template Haskell for converting an AST for a language written using normal algebraic data types into ones written using multi-sorted compositional data types (`Data.Comp.Multi` from the `compdata` library) so that you can use generic and modular operators on it. You might need to add additional constructors that can e.g.: convert a (Term e Foo) into a (Term e [Foo]). . The sCource files have comments showing example output for a simple language. See the examples directory for an extended example of generating a compositional data type for the entire Java language, with labelled variants as well as variants where an entire project of source files can be treated as a single AST -- and you can use the same operations on all of them! Homepage: https://github.com/jkoppel/comptrans Category: Data,Generics Build-type: Simple Cabal-version: >=1.9.2 Source-Repository head Type: git Location: https://github.com/jkoppel/comptrans Library Extensions: DeriveGeneric EmptyDataDecls FlexibleContexts FlexibleInstances FunctionalDependencies GADTs KindSignatures MultiParamTypeClasses OverlappingInstances TemplateHaskell TypeFamilies TypeOperators TypeSynonymInstances UndecidableInstances Ghc-Options: -Wall Exposed-Modules: Data.Comp.Derive.Generic Data.Comp.Trans Other-Modules: Data.Comp.Trans.Collect Data.Comp.Trans.DeriveMulti Data.Comp.Trans.DeriveTrans Data.Comp.Trans.DeriveUntrans Data.Comp.Trans.Names Build-Depends: base >= 4.7, base < 5 , compdata < 1 , containers <= 0.6 , lens < 5 , template-haskell , th-expand-syns <= 0.4 , ghc-prim >= 0.2 , deepseq < 1.4 , deepseq-generics < 0.1.2