基于属性文法的语法评估与模型转换框架
1. 属性文法质量评估
在属性文法的质量评估方面,有一款名为 GQE 的工具,它能辅助用户对属性文法进行评估。该工具的研发动机源于使用定量测量来评估软件产品和规格质量的需求。
GQE 会计算一系列精细的指标,这些指标建立在上下文无关文法(CFG)的传统指标基础上,还新增了考虑书写风格(如句法递归模式、属性评估模式、符号表示等)以及标识符可理解性的指标。它用 Java 开发,并借助了 AnTLR,能够读取任何用 AnTLR 元语言编写的属性文法(AG),并输出所考虑的每个指标的值。
以下是使用 GQE 评估属性文法的步骤:
1. 准备用 AnTLR 元语言编写的属性文法。
2. 使用 GQE 读取该文法。
3. GQE 计算各项指标的值并输出。
4. 由语法工程师分析这些指标值,得出评估结果。
5. 若有需要,工程师可转换原始文法,重新提交进行评估,以了解改进情况。
对于字典序指标,Splitter Expander 有助于识别清晰的属性标识符,而属性运算符标识符指标则需要更多人工判断,建议语法工程师与 GQE 协同工作。
2. 基于属性文法的语法导向模型转换框架
模型转换是模型驱动软件开发的关键环节,它能实现系统模型不同解释的自动推导。在很多场景中,如特定领域语言的设计,模型通常具有可识别的隐式树状主要句法结构,在此基础上会施加额外的次要关系以形成最终的模型图。因此,基于这些模型的底层句法结构进行处理是很自然的。
为此,开发了一个基于属性文法的实验性转换框架 AGT,它能充分利用源模型的底层句法结构。对于能清晰
超级会员免费看
订阅专栏 解锁全文
23

被折叠的 条评论
为什么被折叠?



