语法分析器是函数绘图语言解释器的核心,因此语法分析器的构造是整个解释权构造的关键。语法分析器的构造分为两个重要步骤:规定语言的文法和根据文风编写程序。由于采用递归下降子程序方法,因此在文法的设计上要求是LL(1)文法。具体到此绘图语言,需要构造语法树的语言结构仅限于表达式,因为后继语义处理需要对表达式求值,而对语法树进行遍历即可得到表达式的值。 我们最终构造的是递归下降的语法分析器,要求文法是LL(1)文法,因此需要对二义文法进行改造:即先将文法改写为非二义文法,消除左递归,提取公共左因子,最后转换为产生式与递归子程序有对应关系的形式,形成最终的文法。