我正在和一个朋友一起为一个小型个人项目做口译;我们开始实现所有类和通用结构,在这些类和通用结构中,代码将被翻译然后执行,只是将实际的解析代码推迟到这些结构中。
现在我们必须构建解析器,经过一番搜索,我发现各地到处都是谈论Spirit Qi和Spirit X3的帖子和人们,好像他们(我认为是)两种不同的解析器制作方式一样,但是没有人说出区别,哪个是最近的,我应该从哪个开始。
目的是给定代码字符串,输出最终错误,如果一切都遵循语法和逻辑,则将代码转换为我们已经构建的类的树。我们想在解析过程中检查一致性,例如“您正在使用未声明的变量”这类错误。
我不确定这两个库对事物的威胁如何不同
答案 0 :(得分:3)
X3是更新的,仍在试验中,需要C ++ 14。
Qi是
文档是