1990, 1(4):1-13.
摘要:本文对我们近几年来在递归程序等价变换方面之一系列研究工作做了分类总结,所提出的一些新变换模式和技术进一步丰富了人们对横向程序变换技术的认识。 软件自动化是计算机科学的前沿课题之一,其主要研究途径有:演绎综合途径、程序变换途径、实例推广途径和过程化途径,其中尤以程序变换途径得到研究工作者更多的关注。程序变换大体上可分为横向变换和 纵向变换两大类,所谓横向变换是指在相似的抽象级上将一个语言成分转化为另一个与之等价但效率更高的语言成分。 横向程序变换的研究可追溯到1966年Cooper首次提出的Cooper变换,而英国爱丁堡大学的Burstall和Darlington的研究以及他们所研制的ZAP系统是目前这方面最有代表性的工作。 本文对横向程序变换作了较深入的探讨,其中有相当多一部分递归程序等价变换模式是笔者及其同事们近几年来陆续提出的。 我们将采用函数式递归程序模型作为讨论的基础(参阅[12]之第七章),并把递归程序变换模式分成若干类型加以阐述,限于篇幅,我们只简要叙述各类变换的输入模式、输出模式、可用性条件和应用示例,有关变换的正确性证明(采用结构归纳法)将不在此列出(感兴趣的读者可参阅有关文献)。
1990, 1(4):14-23.
摘要:本文论述从逻辑程序本身提取启发式控制信息,以克服由于逻辑语言系统中控制策略的机械性所带来的不完备性和低效性。具体地给出若干启发式控制规则,并证明了这些规则的正确性。运用这些控制规则可以大大地提高系统的运行效率或改善逻辑程序的语义性质。文章最后给出启发式WAM(记作HWAM),并且用实例说明HWAM比WAM更有效,更完善。
1990, 1(4):24-39.
摘要:本文给出了旋转曲面CAD的一种有理B样条新方法。只要轮廓曲线用非均匀有理二次B样条曲线来表示,就可相当方便地把旋转曲面表示成非均匀有理双二次B样条曲面。这样做,能把圆柱面、圆锥面、圆环面、球面乃至一 般旋转曲面的程序软件和自由曲面的程序软件都用有理B样条的格式统一处理,对CAD工作是有益的。文中附有旋转曲面和球面的生成实例。
1990, 1(4):40-47.
摘要:本文对一个建立在关系数据库INGRES上的知识库系统—KBASE作了简要介绍。该系统采用由用户给出查询模式,系统将查询模式编译成关系代数操作树(RAP树)的新而高效的查询计值方法。在介绍了整个系统的结构和推理模型的基础上,文章着重讨论了规则规范化理论,提出了三种范式的定义、转换方法及优良性质。
1990, 1(4):48-54.
摘要:BD-GKS3D是按图形国际标准GKS-3D(ISO 8805)开发的三维图形支持软件。本文讨论了该软件的设计原则:符合国际标准及尽可能高效率。还讨论了实现的策略,包括二维GKS与三维兼容问题,裁剪与变换,实现环境,图段的数据结构及三维输入等内容。最后对开发BD-GKS3D的工作量、与PHIGS,CGI的关系等作了说明。
1990, 1(4):55-64.
摘要:FFP语言是这样的一种纯粹的泛函程序设计语言,它奠基于严格的数学理论基础之上,是归约语言L4的一个子类[2,3]。本文将面向对象编程(OOP)体裁相当简洁地嵌入到FFP-AST系统中。这样,一方面,揭示了面向对象编程体裁(OOPP)与泛函编程体裁(FPP)之间的近亲关系;另一方面,为OOPP奠定了 FFP-AST语义描述。本文实质上也提供了一种“加于FFP语言之上的兼备FPP和OOPP的编程语言”。贯穿文中的方法论归结为:紧密联系和使用自动机这一概念。