首页 理论教育 逻辑程序设计语言的分析介绍

逻辑程序设计语言的分析介绍

时间:2022-11-13 理论教育 版权反馈
【摘要】:Prolog语言较为接近纯逻辑程序设计语言,其程序设计基础是基于谓词表示的一种特殊方法:Hom子句。但是,是否应当选择逻辑程序设计语言作为未来系统的最佳工具,仍在进行着激烈的争论。

7.4.4 逻辑程序设计语言

另一种非过程式程序设计方法——逻辑程序设计,它是日本人提出第五代计算机计划而被重视和发展的,该计划宣称将以逻辑程序设计为核心,以逻辑程序设计语言为第五代机的机器语言。虽然第五代机未被普遍采用,但该计划为推动计算机科学技术的发展起了重要的作用。

软件工程的观点,任何软件的开发都是从系统描述逐步细化产生可执行代码的过程。软件开发的起点是,列出一个软件需求说明,在说明中说明用户的需求是什么和系统要做的是什么。需求说明逐步被细化,直至得到问题的准确描述和可执行的系统描述,它定义了算法的细节,描述了问题是如何被机械地求解的过程。这样,在“做什么”和“怎么做”之间存在着差距。一些语言(如Ada、Modula2等)处理这种差距的办法是分别给出模块说明和模块实现。传统的程序设计语言对模块的划分和模块的实现还不能自动化,需要程序员创造性的劳动来把软件需求说明细化,以达到机器可执行的过程性描述。

逻辑程序设计试图减少软件说明与可执行描述间的差距,最终目标是能直接运行软件说明,而无需向低级过程说明细化。

逻辑程序设计可简单地描述为程序员先定义与求解问题相关的事实和性质,然后提问。系统则利用程序员提供的信息自动解决问题(推出一个解),而程序员不用给出怎样利用信息的说明。在逻辑程序设计中,问题由逻辑公式,如谓词演算(Predicate calculus)描述。

Prolog语言较为接近纯逻辑程序设计语言,其程序设计基础是基于谓词表示的一种特殊方法:Hom子句。程序员可使用陈述式、非过程性的语言来描述系统。其不足之处是,为提高效率,未能严格遵循逻辑程序设计风格,一些过程性概念仍有体现。

对目前的机器而言,逻辑语言的执行效率还处于低水平阶段,因而限制了逻辑语言的广泛应用。未来社会将是一个知识的社会,人类将更加依赖于知识的处理,逻辑推理机将是人类不可缺少的工具。未来的机器将用自然语言与人类通信,并具有自动语言翻译、图形理解等功能。但是,是否应当选择逻辑程序设计语言作为未来系统的最佳工具,仍在进行着激烈的争论。因此,中学选用面向过程的程序设计语言QBASIC应是恰当的。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈