我正在尝试解析Haskell源代码并生成决策树来分析Haskell程序可以采用的不同路径。
haskell-src-exts
给出了合理的陈述,但没有与之相关的任何类型信息
GHC或其他工具是否提供该功能?
答案 0 :(得分:1)
除了GHC之外,没有其他工具能够特别擅长对Haskell源进行攻击。正在开发haskell-type-exts
以匹配src-exts
,但它从未完成。
因此,您可以使用合理的GHC API包装器,例如hint,并在要使用其type inference api检查的子表达式上调用它。
这是一种相当痛苦的方法,但我想不到更好。如果您只想将haskell- 之类的代码作为练习,那么您可以将PureScript
编译器作为库导入,然后您就可以完全获得以更合理的方式键入带注释的语法树。
或者,您可以尝试浏览GHC api本身的丛林,以获得完全类似的源...
如果您选择走这条路线,this answer可能会让您入门。