@hackage syntactic0.1

Generic abstract syntax, and utilities for embedded languages

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 data-flow languages, such as Feldspar. Currently, it does not support cyclic programs.

\[1\] Data types a la carte, by Wouter Swierstra, in Journal of Functional Programming, 2008

\[2\] http://hackage.haskell.org/package/feldspar-language