函数式语言LFC的Supercompilation技术研究
Contribuinte(s) |
陈海明 |
---|---|
Data(s) |
08/06/2010
|
Resumo |
监督式编译技术是提高程序运行效率的自动优化技术。虽被提出 40 多年,却不被多数人熟知。为了研究监督式编译,并扩展它的应用,对监督式编译技术做了详细的分析,并将监督式编译应用于函数式语言LFC. 目前最为成熟的监督式编译是基于 Refal 的监督式编译系统。为了将 Refal监督式编译应用于 LFC 语言,详细分析了 Refal 语言和 LFC 语言的语法,数据结构,模式匹配的求值规则等。并提出了将现有的监督式编译应用于 LFC 语言的方法。 监督式编译应用于 LFC的第一种方法是将 LFC程序转换为能够被监督式编译系统优化的程序,即 Refal 程序。为提高程序转换的效率,提出了介于LFC和Refal 之间的中间语言表达形式。根据优化技术中优化器自应用的研究,提出了监督式编译应用于LFC的第二种方法,即利用监督式编译器优化LFC中间语言的解释器和源程序。 由于实验中所使用的监督式编译系统是基于无类型语言 Refal 的 SCP, 而LFC 的类型由上下文无关文法定义。因此,程序转换过程中需对 LFC 程序进行类型检查。对函数定义中的模式使用静态类型检查,判断模式的类型是否为类型声明的子类型;对于程序运行中输入参数的类型检查,提出了新的方法,即将 LFC中的文法转换为 Refal 函数 Filter。程序运行时的输入首先被该函数使用。 实验表明, Filter 函数使得输入参数类型和文法所定义类型一致。同时,结果表明,利用解释器优化 LFC 程序的方法是可行的。针对两种方法的实验结果,分析了影响优化结果的因素。最后,总结并提出了下一步的工作。 |
Identificador | |
Idioma(s) |
中文 |
Fonte |
郑丽丽.函数式语言LFC的Supercompilation技术研究[硕士].北京.中国科学院研究生院.2010 |
Palavras-Chave | #计算机软件 #监督式编译 #LFC #Refal #类型 #解释器 |
Tipo |
学位论文 |