Mat*_*w H 17 haskell ghc template-haskell
我正在关注Yesod的书,其中指出:
但是通过使用-ddump-splices GHC选项,我们可以立即查看生成的代码.一个很清理的版本是:
我该怎么做?我已经尝试用我的文件编译ghc -XTemplateHaskell -ddump-splices Page.hs,它留下了如下目录:
Page Page.hi Page.hs Page.hs~ Page.o
但是,这些文件都不包含Template Haskell生成的中间代码.
Dan*_*her 17
同时行为发生了变化,-ddump-to-file除了标志之外的标志还会-ddump-splices将拼接写入文件,有关详细信息,请参见当前(GHC 8.2.1)文档的第9.26节.
在旧版本的GHC上(我没有检查确切地改变了哪个版本的行为),-ddump-splices工作方式不同:
该-ddump-splices选项导致GHC将拼接转储到stderr.不幸的是,该-ddump-to-file标志不会影响拼接(我不知道这是否有更深层次的原因或仅仅是疏忽),因此您需要捕获stderr输出以保存拼接以供以后调查,
ghc -XTemplateHaskell -ddump-splices Page.hs 2> Page.dump-splices
Run Code Online (Sandbox Code Playgroud)
在充分的bash状贝壳上.
| 归档时间: |
|
| 查看次数: |
2554 次 |
| 最近记录: |