Name: syntactic Version: 0.7 Synopsis: Generic abstract syntax, and utilities for embedded languages Description: This library provides: . * Generic representation and manipulation of abstract syntax using a practical encoding of open data types (based on Data Types à la Carte [1]) . * Utilities for analyzing and transforming generic syntax . * General variable binding constructs . * Utilities for building extensible embedded languages based on generic syntax . * A small proof-of-concept implementation of the embedded language Feldspar [2] (see the @Examples@ directory) . Note: The library is probably mostly useful for /functional/ object languages, such as Feldspar. Currently, it does not support cyclic programs. . The following people have contributed to Syntactic: . * Anders Persson . \[1\] /Data types à la carte/, by Wouter Swierstra, in /Journal of Functional Programming/, 2008 . \[2\] License: BSD3 License-file: LICENSE Author: Emil Axelsson Maintainer: emax@chalmers.se Copyright: Copyright (c) 2011, Emil Axelsson Homepage: http://projects.haskell.org/syntactic/ Category: Language Build-type: Simple Cabal-version: >=1.6 Extra-source-files: Examples/ALaCarte.hs Examples/NanoFeldspar/Core.hs Examples/NanoFeldspar/Extra.hs Examples/NanoFeldspar/Vector.hs Examples/NanoFeldspar/Test.hs CEFP/MuFeldspar/Core.hs CEFP/MuFeldspar/Frontend.hs CEFP/MuFeldspar/Prelude.hs CEFP/MuFeldspar/Vector.hs CEFP/Imperative/Compiler.hs CEFP/Imperative/Imperative.hs CEFP/Examples/CodeApplication.hs CEFP/Examples/Exercise10.hs CEFP/Examples/Exercise12.hs CEFP/Examples/Exercise14.hs CEFP/Examples/ExProg.hs CEFP/Examples/SolutionsSec2.hs CEFP/Examples/Test.hs source-repository head type: darcs location: http://projects.haskell.org/syntactic/ Library Exposed-modules: Language.Syntactic Language.Syntactic.Syntax Language.Syntactic.Interpretation.Equality Language.Syntactic.Interpretation.Render Language.Syntactic.Interpretation.Evaluation Language.Syntactic.Constructs.Annotate Language.Syntactic.Constructs.Symbol Language.Syntactic.Constructs.Literal Language.Syntactic.Constructs.Condition Language.Syntactic.Constructs.Tuple Language.Syntactic.Constructs.TupleSyntacticPoly Language.Syntactic.Constructs.TupleSyntacticSimple Language.Syntactic.Constructs.Binding Language.Syntactic.Constructs.Binding.HigherOrder Language.Syntactic.Constructs.Binding.Optimize Language.Syntactic.Constructs.Monad Language.Syntactic.Frontend.Monad Language.Syntactic.Sharing.SimpleCodeMotion Language.Syntactic.Sharing.Utils Language.Syntactic.Sharing.Graph Language.Syntactic.Sharing.StableName Language.Syntactic.Sharing.Reify Language.Syntactic.Sharing.ReifyHO Other-modules: Build-depends: array, base >= 4 && < 4.4, containers, data-hash, mtl >= 1.1 && < 3, tagged, transformers >= 0.2, tuple >= 0.2 Extensions: DeriveDataTypeable DeriveFunctor EmptyDataDecls FlexibleContexts FlexibleInstances FunctionalDependencies GADTs GeneralizedNewtypeDeriving MultiParamTypeClasses PatternGuards Rank2Types ScopedTypeVariables StandaloneDeriving TypeFamilies TypeOperators TypeSynonymInstances ViewPatterns