The th-desugar package

[Tags: bsd3, library]

This package provides the Language.Haskell.TH.Desugar module, which desugars Template Haskell's rich encoding of Haskell syntax into a simpler encoding. This desugaring discards surface syntax information (such as the use of infix operators) but retains the original meaning of the TH code. The intended use of this package is as a preprocessor for more advanced code manipulation tools. Note that the input to any of the ds... functions should be produced from a TH quote, using the syntax [| ... |]. If the input to these functions is a hand-coded TH syntax tree, the results may be unpredictable. In particular, it is likely that promoted datatypes will not work as expected.


[Skip to ReadMe]

Properties

Versions1.0.0, 1.1.0, 1.1.1, 1.2.0, 1.2.1, 1.3.0, 1.3.1, 1.4.0, 1.4.1, 1.4.2, 1.4.2.1, 1.5, 1.5.1, 1.5.2, 1.5.3, 1.5.4
Change logCHANGES.md
Dependenciesbase (==4.*), containers (>=0.5), mtl (>=2.1), syb (>=0.4), template-haskell [details]
LicenseBSD3
AuthorRichard Eisenberg <eir@cis.upenn.edu>
MaintainerRichard Eisenberg <eir@cis.upenn.edu>
Stabilityexperimental
CategoryTemplate Haskell
Home pagehttp://www.cis.upenn.edu/~eir/packages/th-desugar
Bug trackerhttps://github.com/goldfirere/th-desugar/issues
Source repositorythis: git clone https://github.com/goldfirere/th-desugar.git(tag v1.3.0)
UploadedFri Mar 14 16:01:07 UTC 2014 by RichardEisenberg
DistributionsLTSHaskell:1.5.4, NixOS:1.5.4, Stackage:1.5.4
Downloads5613 total (254 in last 30 days)
Votes
0 []
StatusDocs available [build log]
Successful builds reported [all 1 reports]

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for th-desugar-1.3.0

th-desugar Package

Build Status

This package provides the Language.Haskell.TH.Desugar module, which desugars Template Haskell's rich encoding of Haskell syntax into a simpler encoding. This desugaring discards surface syntax information (such as the use of infix operators) but retains the original meaning of the TH code. The intended use of this package is as a preprocessor for more advanced code manipulation tools. Note that the input to any of the ds... functions should be produced from a TH quote, using the syntax [| ... |]. If the input to these functions is a hand-coded TH syntax tree, the results may be unpredictable. In particular, it is likely that promoted datatypes will not work as expected.

The package was designed for use with the singletons package, so some design decisions are based on that use case, when more than one design choice was possible.

I will try to keep this package up-to-date with respect to changes in GHC.