ATTRIBUTE GRAMMARS 属性文法
前言:
1968年被Donald Knuth 提出,当时的目的是为了对上下文无关的语义进行形式化。现在多用于类似:检查声明,检查变量or函数是否与声明一致,操作语义等。
静态语义形式化描述最常采用的是属性文法(attributegrammars),它实际上是为产生式中的符号扩充属性。因此,也可以认为属性文法是对上下文无关文法的扩充,二者结合起来,完整地定义出合法的程序。 由于属性文法对静态语义的描述并不是独立的,需要与文法捆绑在一起,因此被认为是半形式化的描述。