因此,TemplateHaskell 的大多数准引用器都有一个选项,您可以在其中读取文件中的准引用字符串,而不是在括号中键入它,例如[quoter|... some code ...|]
.
我想知道,对于普通的 TemplateHaskell 引号括号是否有等效的方法?即[e|...|]
[t|...|]
和[d|...|]
。
我正在编写一个翻译器,它将 Haskell 代码转换为 Elm,同时保留我的 Haskell 声明,这样我就可以使用 Haskell 进行服务器端编程,使用 Elm 进行 Javascript 生成。为了进行这种翻译,我希望能够读取 Haskell 模块,使用 TemplateHaskell 遍历 ADT,并将翻译后的代码生成为字符串,同时另外将模块中的 Haskell 声明注入代码中。
我有这个工作,但只有当我将我的 Haskell 代码编写为[d|some decs|]
. 我希望能够做同样的事情,但从外部文件中读取。