syntactic: Generic abstract syntax, and utilities for embedded languages

[ bsd3, language, library ] [ Propose Tags ] [ Report a vulnerability ]

This library provides:

  • Generic representation and manipulation of abstract syntax

  • Composable AST representations (partly based on Data Types à la Carte [1])

  • A collection of common syntactic constructs, including variable binding constructs

  • Utilities for analyzing and transforming generic abstract syntax

  • Utilities for building extensible embedded languages based on generic syntax

For more information about the core functionality, see "A Generic Abstract Syntax Model for Embedded Languages" (ICFP 2012):

For a practical example of how to use the library, see the proof-of-concept implementation Feldspar EDSL in the examples directory. (The real Feldspar [2] is also implemented using Syntactic.)

The maturity of this library varies between different modules. The core part (Language.Syntactic) is rather stable, but many of the other modules are in a much more experimental state.

\[1\] W. Swierstra. Data Types à la Carte. Journal of Functional Programming, 18(4):423-436, 2008, http://dx.doi.org/10.1017/S0956796808006758.

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

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1, 0.2, 0.2.0.1, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.0.1, 1.2, 1.2.1, 1.3, 1.4, 1.5.1, 1.5.2, 1.6.1, 1.7.1, 1.8, 1.9, 1.10, 1.11, 1.12.1, 1.13, 1.14, 1.15, 1.15.1, 1.16, 1.16.1, 1.16.2, 1.17, 2.0, 2.1, 3.0, 3.1, 3.2, 3.2.1, 3.3, 3.4, 3.5, 3.6, 3.6.1, 3.6.2, 3.6.3, 3.7, 3.7.1, 3.8, 3.8.1, 3.8.2, 3.8.3, 3.8.4
Dependencies array, base (>=4 && <4.8), constraints, containers, data-hash, ghc-prim, mtl (>=2 && <3), template-haskell, transformers (>=0.2), tree-view, tuple (>=0.2) [details]
Tested with ghc ==7.6.2, ghc ==7.8.2
License BSD-3-Clause
Copyright Copyright (c) 2011-2014, Emil Axelsson
Author Emil Axelsson
Maintainer emax@chalmers.se
Category Language
Home page https://github.com/emilaxelsson/syntactic
Bug tracker https://github.com/emilaxelsson/syntactic/issues
Source repo head: git clone https://github.com/emilaxelsson/syntactic
Uploaded by EmilAxelsson at 2014-04-17T13:49:43Z
Distributions
Reverse Dependencies 9 direct, 2 indirect [details]
Downloads 37453 total (159 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]