
Perhaps you can just write a client to the GHC library that - constructs a string for your program - asks GHC to evaluate it just as if you'd typed it at the command line You may say that a string is a silly thing -- your GA will construct a tree, so the GHC API should supply a function that takes the parse tree rather than the string. Good point. There should be a Trac feature request on which to accumulate feature requests for the GHC API. But meanwhile, serialising it as a string should be fine, no? Simon | -----Original Message----- | From: glasgow-haskell-users-bounces@haskell.org [mailto:glasgow-haskell-users-bounces@haskell.org] On | Behalf Of Rene de Visser | Sent: 20 May 2007 21:30 | To: glasgow-haskell-users@haskell.org | Subject: Feature request/help: evaluating template haskell at runtime | | Hello, | | I am attempting some genetic programming in Haskell. | | Rather than defining my own data type for programs and writing my own | interpreter, I want to use the template haskell expression data types and | evaluate them with the rts's byte code interpreter. This gives me a nice | fast interpreter that provides the statistics that I want. | | I could pretty print the template haskell and then execute the result string | using the GHC module or hs-plugins, but I would like to save the pretty | printing and parsing as normally the program generation time is important by | GP. | | I have being looking at module TcSplice. | | I see that I need to run the TH expression through function convertToHsExpr, | but after that I am stuck. | | This produces LHsExpr RdrName and I need to get CoreSyn.CoreExpr. | | What functions to use? | | dsLExpr :: LHsExpr Id -> DsM CoreSyn.CoreExpr seems one important step, | but I haven't figured out how to get from LHtsExpr RdrName to LHsExpr Id. | | It would be nice to have standard GHC functionality to have the ability to | compile and evaluate template haskell at runtime using the GHC library. | | Rene. | | | | _______________________________________________ | Glasgow-haskell-users mailing list | Glasgow-haskell-users@haskell.org | http://www.haskell.org/mailman/listinfo/glasgow-haskell-users