Additional - I want to connect to GHC's type-checking also and translate the errors to be appropriate to my language syntax.2013/7/19 John Blackbox <blackbox.dev.ml@gmail.com>
Alan - I do NOT want to generate Haskell code. I want only to generate AST and compile it.The question about generating the code was only to have a "debugging tool" - to see if the generated AST is good - I wanted to generate the Haskell code only to check if its correct, but normally I would not do it, because it makes no sense to generate AST -> code -> AST (by GHC) again etc :)2013/7/19 AlanKim Zimmerman <alan.zimm@gmail.com>
I have not used haskell-src-exts so I may be talking out of turn, but it seems that if you want to generate an AST which you then turn into source code and compile it makes more sense than using than GHC AST, which has a number of wrinkles, including fields that are only valid at certain phases of the compilation process.For my purposes, in the Haskell Refactorer, I need access to the renaming and type-checking, which to my knowledge is not currently available in haskell-src-exts, although there is work happening to bring it in, e.g. https://github.com/haskell-suite/haskell-names.
On Fri, Jul 19, 2013 at 10:09 AM, John Blackbox <blackbox.dev.ml@gmail.com> wrote:
Thank you!So, if I'm writing a compiler of custom language, which I want to generate Haskell AST and further compile it with GHC, you prefer something like haskell-src-exts over pure GHC API?2013/7/19 Antoine Latter <aslatter@gmail.com>
The package haskell-src-exts is a lot less intimidating if all you are
trying to do is programmatically generate Haskell source:
http://hackage.haskell.org/package/haskell-src-exts
The base types are here:
http://hackage.haskell.org/packages/archive/haskell-src-exts/1.13.5/doc/html/Language-Haskell-Exts-Syntax.html#t:Module
This module has some helper function for generating parts of the AST:
http://hackage.haskell.org/packages/archive/haskell-src-exts/1.13.5/doc/html/Language-Haskell-Exts-Build.html
> Hi!
> I dont know GHC API very well, but I want to generate AST of a program using
> GHC API.
> Is there any standard method to generate Haskell code out of it? (something
> like "print_this_for_me_please" function? :D
>
> _______________________________________________
> 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