我正在Haskell中编写一个反引号,我需要一个解析有效Haskell变量标识符的Parsec组合器。
是否已在quasiquoting库中实现了一个或者我是否需要自己编写?
我希望我不需要复制/粘贴http://www.haskell.org/haskellwiki/Quasiquotation中的 ident 实现。
答案 0 :(得分:5)
模板Haskell实现中的任何内容都不太可能包含任何Parsec解析器,因为GHC不使用Parsec进行解析 - 请注意它不是以the list of packages tied to GHC的方式进行解析。
但是,the module Text.Parsec.Token
提供了一种描述语言的完整令牌解析器的方法,the Text.Parsec.Language
module包括一些预定义的令牌解析器,包括一个用于Haskell令牌的解析器。
除此之外,您还可以查看the haskell-src-exts
package,它是Haskell源文件的解析器。