论文部分内容阅读
Godel语言是继Prolog语言之后出现的逻辑程序设计语言,它建立在多态多类的一阶逻辑基础之上,摒弃了Prolog语言中的非逻辑成分,集成了许多语言的有效成分和优点,引入了类型系统,这使得它成为一种高效的说明性逻辑程序设计语言。然而,时至今日,Godel语言编译系统的开发研究仍然进展缓慢,主要原因是多态多类的类型系统、模块化结构、延迟计算、剪枝操作等多种新语言成分和机制的引入,使逻辑程序设计语言Godel的复杂程度大大提高,而面向过程程序设计语言的编译方法和技术完全不同于具有递归性、说明性特点的逻辑程序设计语言,先前关于Prolog语言的编译方法和技术不能简单移植和照搬,而理论基础研究的滞后直接导致系统研究和开发进展缓慢,迄今尚无新的进展和系统开发成果报道。
为了促进Godel语言的推广以及深入研究,本人所在的课题组基于类型一阶逻辑Horn子集提出了Godel语言一整套理论基础,本文在Godel语言的语法和形式化说明性语义基础上,着眼于编译系统的设计与实现,为Godel语言建立了严格的形式化过程性语义。
本文首先介绍了Godel语言的语法基础,接着详细阐述了基于类型一阶逻辑Horn子集的过程性语义,引入了较为完整的基类型,构造类型,结构类型间的偏序关系,讨论了类型相容性关系,类型推断与类型约束算法,以及基于类型约束的合一算法和SLD反驳消解法。然后,全面介绍了Godel语言程序设计的各个模块。最后,在原Godel语言系统模型的基础上完善了该系统的设计思想。相信在相关理论的支持和指导下,随着后续工作的逐步开展,以及Godel语言编译系统实现技术的逐步成熟,Godel语言将会受到更多的关注。