Forwarding in Attribute Grammars for Modular Language Design

Forwarding in Attribute Grammars for Modular Language Design
复制标题

模块化语言设计的属性语法中的转发

DOI:
--
复制
发表时间:
2002
期刊:
International Conference on Compiler Construction
影响因子:
--
通讯作者:
P. Kwiatkowski
P. Kwiatkowski
中科院分区:
--
文献类型:
--
作者:
E. V. Wyk;O. Moor;Kevin Backhouse;P. Kwiatkowski

文献摘要

被引文献

相似文献

转发是一种在属性语法中提供默认属性定义的技术,该定义有助于编程语言的模块化实现。它补充了现有技术,例如默认复制规则。本文介绍了转发,并显示了它是如何进行的,但仅对标准高阶属性语法的一小部分扩展。操纵高阶属性语法的常用工具,包括圆形检查(该检查(该检查)在属性值之间测试循环依赖性),而无需修改。但是,闭合测试(检查每个属性都有一个定义方程式)需要修改,因为所得的高阶属性语法可能包含从未评估过的虚假属性,实际上不需要定义。
Forwarding is a technique for providing default attribute definitions in attribute grammars that is helpful in the modular implementation of programming languages. It complements existing techniques such as default copy rules. This paper introduces forwarding and shows how it is but a small extension of standard higher-order attribute grammars. The usual tools for manipulating higher-order attribute grammars, including the circularity check (which tests for cyclic dependencies between attribute values), carry over without modification. The closure test (which checks that each attribute has a defining equation) needs modification, however, because the resulting higher-order attribute grammars may contain spurious attributes that are never evaluated and indeed that need not be defined.