- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5. 条件函数 条件函数也称分支函数, 类似于其他语言中的分支语句, 其作用是控制程序的流程。最常用到的条件函数是COND函数。 格式 (COND (P1 e1) (P2 e2) (Pn en)) … 其中Pi(i=1,…,n)为谓词, ei(i=1,…,n)为一个或多个S-表达式。 * 第 16 章 智能程序设计语言 第 16 章 智能程序设计语言 16.1 综述 16.2 函数型程序设计语言 16.3 Visual Prolog语言简介 习题十六 16.1 综 述 16.1.1 函数型语言 LISP是一种函数型程序设计语言。LISP程序由一组函数组成, 程序的执行过程就是一系列的函数调用和求值过程。 但 LISP还不是纯函数型语言, 准确地讲, 它是基于λ-函数的语言。除LISP外, 20世纪70年代J.Backus还提出了一种称为FP的所谓纯函数型程序设计语言。 但该语言现在还限于理论研究, 实现上还存在一定困难。 16.1.2 逻辑型语言 逻辑型程序设计语言起源于PROLOG(PROgramming in LOGic)。 PROLOG语言首先由法国马塞大学的Colmerauer和它的研究小组于1972年研制成功, 后来在欧洲得到进一步发展。 特别是1981年日本宣布要以PROLOG作为他们正在研制的新一代计算机——智能计算机的核心语言, 更使PROLOG举世瞩目, 迅速风靡世界。现在PROLOG几乎在人工智能的所有领域都获得了应用, 成为与LISP并驾齐驱的甚至更加流行的智能程序设计语言。由于PROLOG语言是一种逻辑型程序设计语言, 因此用它编写的程序也就是逻辑程序,即在PROLOG程序中一般不需告诉计算机“怎么做”, 而只需告诉它“做什么”。因此,PROLOG亦属陈述性语言。与通常的过程性程序设计语言相比, PROLOG是更高级的语言。 PROLOG语言是以Horn子句逻辑为基础的程序设计语言,它是目前最具代表性的一种逻辑程序设计语言。早期PROLOG版本都是解释型的, 1986 年美国的Borland公司推出了编译型PROLOG-Turbo PROLOG, 并很快成为PC机上流行的PROLOG。 现在还有运行在Windows环境下的可视化编程语言Visual PROLOG。但这些PROLOG语言版本属顺序逻辑程序设计语言。为了进一步提高运行效率和推理速度,从20世纪80年代初起,人们开始研制并行逻辑程序设计语言。目前已开发出了不少并行逻辑语言,其中比较著名和成熟的有PARLOG(PARallel LOGical programming language)、ConcurrentPROLOG、GHC(Guarded Horn Clauses)等。 16.1.3 面向对象语言 20 世纪 80 年代以来, 面向对象程序设计(ObjectOriented Programming,OOP)异军突起, 发展迅速, 如今已日渐成熟, 并越来越流行起来。 面向对象程序以其信息隐蔽、 封装、继承、多态、消息传递等一系列优良机制, 大大改善了软件的复杂性、模块性、重用性和可维护性, 有望从根本上解决软件的生产效率问题。另一方面,由于面向对象程序设计的类、对象、继承等概念,与人工智能特别是知识表示和知识库产生了天然的联系。因而, 现在面向对象程序设计语言也成为一种人工智能程序设计语言, 面向对象程序设计也被广泛引入人工智能程序设计, 特别是知识工程、 专家系统程序设计。 面向对象程序设计语言也种类繁多, 已发展成为一个大家族。其中最纯正、 最具面向对象风格的语言当推Smalltalk,而最流行的OOP语言是C++, Java则是适于网络(Internet)环境的一种面向对象语言。 16.1.4 混合型语言 1. 函数型与逻辑型相结合的语言 函数型与逻辑型语言的结合方式有耦合型和统一型两类。 统一型又可分为具有归结语义的函数型语言和集成式语言两个子类。 耦合型语言意为将具有归约语义的函数型语言和具有归结语义的逻辑型语言组合在一起, 并在二者之间提供一个接口而形成的一种混合型语言。 其典型代表有: (1) LOGLISP。该语言在LISP的基础上增加了表达合一、 回溯等机制的系统函数,从而在保持LISP特色的同时又有了逻辑程序设计能力。 (2) FUNLOG。该语言在 PROLOG 之外又增加了函数定义机制, 系统以归结语义执行PROLOG程序,
原创力文档


文档评论(0)