Silverlight中的语言分析器

时间:2010-01-08 18:00:17

标签: silverlight parser-generator

我需要为某些特定语言(SQL的子集)编写解析器。据我所知,最简单的方法是在BNF中定义语法并使用类似yacc的工具(我对GPPG有积极的经验)。但是当我开始时,我意识到这些工具会产生依赖于某些核心解析器程序集的解析器(例如,用于GPPG的ShiftReduceParser.dll)。我需要为Silverilght实现解析器,所以我不能使用针对完整框架的库。

是否有可用于/用于Silverilght的解析器生成器工具?

4 个答案:

答案 0 :(得分:3)

我不知道您允许在Silverlight中使用哪些框架库,但Coco/R似乎非常轻量级,只需要System.IO和{{1}进行一些流/文本处理}。

答案 1 :(得分:0)

您是否需要解析器在Silverlight中运行?您是否可以让服务器通过WCF或其他传输来处理该功能?这样,您就可以使用之前经验丰富的代码来执行解析。

答案 2 :(得分:0)

您可能想尝试像ANTLR这样的库。 Here's an article,展示了如何将其用于SQL解析。

答案 3 :(得分:0)

您可以使用C#4.0中实现的Jigsaw parsing library。有一篇详细的文章解释how to build a parser using it here on CodeProject.com