haskell-src-meta: Parse source to template-haskell abstract syntax.

[ bsd3, language, library, template-haskell ] [ Propose Tags ]

The translation from haskell-src-exts abstract syntax to template-haskell abstract syntax isn't 100% complete yet.


[Skip to Readme]

Flags

Automatic Flags
NameDescriptionDefault
new-th

Build with template-haskell >= 2.7.0

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Versions [RSS] 0.0.0, 0.0.1, 0.0.2, 0.0.3, 0.0.3.1, 0.0.4, 0.0.5, 0.0.6, 0.1.0, 0.1.1, 0.2, 0.3, 0.4, 0.4.0.1, 0.4.0.2, 0.5, 0.5.0.2, 0.5.0.3, 0.5.1, 0.5.1.1, 0.5.1.2, 0.6, 0.6.0.1, 0.6.0.2, 0.6.0.3, 0.6.0.4, 0.6.0.5, 0.6.0.6, 0.6.0.7, 0.6.0.8, 0.6.0.9, 0.6.0.10, 0.6.0.11, 0.6.0.12, 0.6.0.13, 0.6.0.14, 0.7.0, 0.7.0.1, 0.8, 0.8.0.1, 0.8.0.2, 0.8.0.3, 0.8.1, 0.8.2, 0.8.3, 0.8.4, 0.8.5, 0.8.6, 0.8.7, 0.8.7.1, 0.8.8, 0.8.9, 0.8.10, 0.8.11, 0.8.12, 0.8.13
Dependencies base (>=4.2 && <4.6), haskell-src-exts (>=1.8 && <1.12), pretty (>=1.0 && <1.2), syb (>=0.1 && <0.4), template-haskell (>=2.4 && <2.9), th-lift (>=0.5 && <0.6), uniplate (>=1.3 && <1.7) [details]
License BSD-3-Clause
Copyright (c) Matt Morrow
Author Matt Morrow
Maintainer Ben Millwood <haskell@benmachine.co.uk>
Category Language
Bug tracker https://github.com/benmachine/haskell-src-meta/issues
Source repo head: git clone git://github.com/benmachine/haskell-src-meta.git
Uploaded by BenMillwood at 2012-03-17T19:38:15Z
Distributions Arch:0.8.11, Debian:0.8.5, Fedora:0.8.12, LTSHaskell:0.8.13, NixOS:0.8.13, Stackage:0.8.13
Reverse Dependencies 114 direct, 3786 indirect [details]
Downloads 86935 total (337 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for haskell-src-meta-0.5.1.1

[back to package description]
haskell-src-meta is a package originally by Matt Morrow for converting a
parsed AST from haskell-src-exts to a TH AST for use in splices and
quasiquoters. The last version Matt released before he disappeared from
the Haskell community was 0.0.6, but by that time his library was
already popular, so some community members eventually decided to take
over maintenance of the package, keeping it up to date with the latest
versions of TH etc.

I don't really view this as "my" package so if you want write access to
the github repository, or you think you could do a better job as
maintainer, just ask.

Major changes:

0.5.1 -> 0.5.1.1:
- View pattern support, thanks to Nicolas Frisby.

0.5.0.3 -> 0.5.1:
- New module Language.Haskell.Meta.Parse.Careful, written by Reiner Pope
  so that ambiguous parses can be rejected instead of quietly done wrong.

0.5.0.2 -> 0.5.0.3:
- Support for GHC 7.4, thanks to Reiner Pope
- Support for unresolved infix expressions, again thanks to Reiner Pope

0.5.0.1 -> 0.5.0.2:
- Fixed bug in translation of tuple constructors

0.5 -> 0.5.0.1:
- Added support for primitive string literals (Only in TH >= 2.5)

0.4.0.2 -> 0.5:
- Added support for instance declarations

0.4.0.1 -> 0.4.0.2:
- Compatibility with GHC 7.2

0.4 -> 0.4.0.1:
- Deprecate myDefaultParseMode and myDefaultExtensions in L.H.M.Parse

0.3 -> 0.4:
- Remove Language.Haskell.Meta.Syntax.Vars and the L.H.M.Syntax re-export module
- Remove dependency on containers
- Add support for let statements in (pattern) guards
- Add support for negative patterns
- Remove "support" for SpliceExps that didn't really make sense
- Improve many error messages where things are unimplemented or impossible

0.2 -> 0.3:
- Fixes/additions to inline pragma support (Jonas Duregard)
- Compatibility with GHC 7 and TH 2.5 - totalling three major versions!
- Move some of the quasiquoters to their own package, and stop exporting
  the rest (they are kept as examples of usage)

0.1.1 -> 0.2:
- Compatibility with GHC 6.10 and TH 2.3 (Geoffrey Mainland)
- Add support for do-blocks, pattern guards (Adam Vogt)
- Add applicative-do quasiquoter (Adam Vogt)

0.1.0 -> 0.1.1:
- Add support for inline pragmas, and improve support for type
  signatures (patch by Jonas Duregard)

0.0.6 -> 0.1.0:
- Used the th-lift library to autogenerate the instances of Lift in
  Language.Haskell.TH.Instances.Lift
- Added support for the new features of template-haskell-2.4.0.0:
  contexts, kinds, bang patterns, unboxed word literals.
- Updated use of haskell-src-exts in response to API changes.
- Added ToDecs class because some HSE Decls don't map to a single Dec.
  (patch by Jonas Duregard)