我正在为我的一种自定义脚本语言编写解释器。这是 GitHub 上的实际项目:链接。如果有人想帮助我,将不胜感激:) 但是我需要实现一个语法检查器,以从我解析的令牌数组中了解代码的语法是否正确。什么是最好的方法?
PS 在这里我不想使用 lex/yacc 或 flex 和 bison。
我正在为我的一种自定义脚本语言编写解释器。这是 GitHub 上的实际项目:链接。如果有人想帮助我,将不胜感激:) 但是我需要实现一个语法检查器,以从我解析的令牌数组中了解代码的语法是否正确。什么是最好的方法?
PS 在这里我不想使用 lex/yacc 或 flex 和 bison。
要么实现你自己的解析器,要么使用 yacc/bison。
龙书是一个很好的起点(http://en.wikipedia.org/wiki/Principles_of_Compiler_Design)。
这里还有一个自顶向下解析器的示例 C++ 实现: http ://en.wikipedia.org/wiki/LL_parser