我正在寻找一种方法将有效Haskell表达式代码的字符串编译成TH Exp
。
例如,如果存在适当的功能,我希望它的行为方式如下:
> $(theFunctionImLookingFor "\a -> a + 1") 2
3
我已经为quoteExp :: String -> Q Exp
的基础QuasiQuoter
寻找了[e|..|]
的实现,但它似乎是神奇的,没有。
答案 0 :(得分:3)
您要查找的功能是Language.Haskell.Meta.Parse.parseExp
haskell-src-meta