Hi Neil, Thanks for the suggestion! I'd seen the package before, but I couldn't figure out a good way to integrate it into my codegen situation.
I guess I should write the "skeleton" of the code I want to generate, get HSE to parse it, and then replace the parts I want to change of the AST with what I need? Is there a nicer way (TH-like?) to get the modified AST into GHC than prettyprinting the AST again and asking GHC to compile the output file? Thank you, Dan On Fri, May 8, 2009 at 11:49 AM, Neil Mitchell <ndmitch...@gmail.com> wrote: > Hi Dan, > >> I was wondering whether anyone had any suggestions on a good way to >> generate repetitive code with associated types and kind annotations. > > haskell-src-exts is the answer: > http://hackage.haskell.org/cgi-bin/hackage-scripts/package/haskell-src-exts > > From the project description: > > "Haskell-Source with Extensions (HSE, haskell-src-exts) is an > extension of the standard haskell-src package, and handles most common > syntactic extensions to Haskell, including: ... Indexed type families > (including associated types)" > > I've used the project extensively in HLint > (http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hlint) and > it works fantastically. > > Thanks > > Neil > > On Fri, May 8, 2009 at 4:24 PM, Daniel Peebles <pumpkin...@gmail.com> wrote: >> Hi all, >> >> I'd like to use TH but as far as I understand, it doesn't support this >> yet (I think associated types are in HEAD but not kinds), so for now >> I've been using ruby with string interpolation, which feels rather >> ugly. It means that I have to edit the ruby script and regenerate the >> file in question each time I make a change, which doesn't fit in very >> nicely with cabal (or my patience) and so on. Ideally, I'd have >> something that I can write mostly like real Haskell (with "holes" to >> substitute values into), that can be integrated nicely into the cabal >> build system without using custom external preprocessors or anything >> like that. >> >> Any ideas? >> >> Thanks, >> Dan >> _______________________________________________ >> 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