表达编程语言语义(AST - > ASG)

时间:2009-05-20 08:43:48

标签: compiler-construction computer-science

您是否有任何指向与表达计算机语言语义相关的信息/研究的指针,语法要求是使用编码/标记符号(例如EBNF)形式化的?

由于

2 个答案:

答案 0 :(得分:3)

关于这个问题有大量文献。 Peter Mosses写了一本名为 Action Semantics 的书。 Peter Lee和Andrew Appel都做过博士论文,从正式的语义描述中生成编译器;我认为彼得出来是一本书。

Bill Waite在科罗拉多州的小组做了一个名为Eli的编译器构建工具包,涵盖了从lexing到解析到语义的所有内容。 Tom Reps在属性语法方面的工作应用于语言语义等。还有一些使用属性语法的欧洲作品,但我不记得缩写词或人物。

蘸脚趾的好地方可能包括

  • Don Knuth关于属性语法的原始论文
  • Peter Lee的论文
  • 也许Peter Mosses的书,虽然我似乎记得我发现它很重要

答案 1 :(得分:1)

本杰明·皮尔斯的书Types and Programming Languages是一个很好的起点。它使用“操作小步骤语义”作为编程语言的正式规范。

另一个好的资源可能是John Boyland's PHD thesis

他开发了一个名为APS的系统,可以使用属性语法生成整个编译器。