为了在纤细-like模板语言( .NET )中构建一个解析器,哪种语言更适合C#或F#?(对我来说,F#似乎更科学,更适合于这样的任务。)
除了语言选择之外,这两种技术中哪一种适合于分析语言,其中有两个空间增量缩进来描述嵌套/块(例如;Slim、Haml或SCSS):递归下降解析或递归Ascent解析。
OAN,在.NET中是否有对RDP或RAP的OOTB支持?或者是一个通用的、优雅的第三方解析库,比如Java的半熟
发布于 2013-10-04 15:32:18
F#是编写解析器的优秀工具。你有各种各样的选择:
发布于 2013-10-04 16:38:43
F#本身是一种对缩进敏感的语言,F#编译器使用fslex/fsyacc进行解析。如果您看一下F#解析器,缩进敏感性会给这个过程增加额外的复杂性。
fslex/fsyacc
如果您没有多少使用F#的经验,手动F#解析器可能不是一个好主意。我建议使用FParsec。它具有手动解析器的灵活性,使用起来比fslex/fsyacc简单得多。
在FParsec中,您可以从这篇文章中找到两个基于缩进语法的实现。
发布于 2013-10-04 18:00:29
要在C#.NET中构建一个自制解析器,您可能需要查看(Rx)的罗XX扩展。
另外,请查看此列表以创建。C#中的解析器。
https://stackoverflow.com/questions/19184946
相似问题