Great package! One question: Do you remove/inline type synonyms? I ask because I just ran into this with some TH code. I'm looking for types that end with -> a, but that fails when type synonyms are involved.
Sjoerd On Aug 30, 2013, at 2:08 AM, Richard Eisenberg <e...@cis.upenn.edu> wrote: > I've just uploaded my new th-desugar package, which enables easier processing > of Template Haskell source syntax by desugaring it into a much simpler core > language. The meaning of the code after desugaring is identical to before > desugaring, but the syntax is much simpler. To wit, th-desugar simplifies out > all of the following constructs: > > - guarded expressions in both functions and case statements > - "where" declarations > - do syntax > - list/monad comprehensions > - record creation / updates > - as patterns > - non-trivial patterns in a lambda expression > - lambda-case > - multi-way if > - several more > > If you are writing a library that manipulates Template Haskell syntax, you > may wish to consider if th-desugar will make your job easier by forcing you > to consider fewer cases. The one source Haskell construct supported by > Template Haskell but not supported by th-desguar is view patterns, mostly > because these interact quite non-trivially with pattern binders. It's > possible this hole will be closed in a future version. > > Enjoy! > Richard > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe