恢复 Java 语言规范的语法关系
摘要:语法收敛:一种方法,有助于发现相同语言的不同语法或不同语言版本之间的关系。该方法的关键元素是基于操作和转换的关系表示。给定输入语法进行收敛,直到它们在结构上相等。这些转换是由原始操作符组成的,这些操作符的属性和组合链提供了关于所提供的语法之间关系的定量和定性的洞察力。我们描述了一种改进的语法收敛方法,并在一项重大研究中使用它,恢复了出现在Java语言规范(JLS)的不同版本中的所有语法之间的关系。这些关系被表示为捕捉所有JLS语法之间意外或有意的差异的语法转换链。该方法是机械化的,由对称的二进制收敛步骤所受制的一对语法之间的名义和结构差异驱动。我们详细介绍了语法转换的底层操作套件,并用许多示例说明了JLS语法上的转换。我们还描述了提取工作,用于使JLS语法适应自动化处理。我们提供了关于JLS收敛过程的大量元数据,以便该工作可以复现和透明化。
作者:Ralf L"ammel and Vadim Zaytsev
论文ID:1008.4188
分类:Programming Languages
分类简称:cs.PL
提交时间:2011-07-20