我注意到明显缺乏用函数式语言创建解析器的 LL 解析器。我一直在寻找但没有成功的理想发现是为 ANTLR 风格的 LL(*) 语法生成 Haskell 解析器(对语法进行模次小重新格式化),并且令每一个具有功能的解析器生成器感到惊讶我发现的语言目标是某种 LR 解析器。
我想将我正在研究的这种语言的解析器转换为语言本身的功能特性,从 ANTLR 到自托管,如果我可以将某些几乎可以肯定在另一种功能语言中正确的东西移植到我的语言中,这将有很大帮助(最好是我熟悉的 Haskell 和 Scala),而不必完全从头开始重写它,尽管最终我可能会这样做,因为核心语言很小。
在这一点上,甚至不仅仅是解决方案,我很好奇为什么没有这样的 LL(*) 甚至 LL(k) 解析器生成器,但是有许多 LR 生成器,因为 LL 似乎天生就更容易。