网站大量收购独家精品文档,联系QQ:2885784924

人工智能程序的设计语言.ppt

  1. 1、本文档共151页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人工智能程序的设计语言

第2章 人工智能程序设计语言 2.1 综述 2.2 函数型程序设计语言LISP 2.3 逻辑型程序设计语言PROLOG 2.4 Turbo PROLOG程序设计 2.1 综述 2.1.1 函数型语言 LISP是一种函数型程序设计语言。LISP程序由一组函数组成,程序的执行过程就是一系列的函数调用和求值过程。但LISP还不是纯函数型语言,准确地讲,它是基于λ--函数的语言。除LISP外,20世纪70年代J.Backus还提出了一种称为FP的所谓纯函数型程序设计语言。但该语言现在还限于理论研究,实现上还存在一定困难。 2.1.2 逻辑型语言 逻辑型程序设计语言起源于PROLOG(PROgramminginLOGic的缩写)。PROLOG语言首先由法国马塞大学的Colmerauer和它的研究小组于1972年研制成功,后来在欧洲得到进一步发展。特别是1981年日本宣布要以PROLOG作为他们正在研制的新一代计算机——智能计算机的核心语言,更使PROLOG举世瞩目,迅速风靡世界。 PROLOG语言是以Horn子句逻辑为基础的程序设计语言,它是目前最具代表性的一种逻辑程序设计语言。早期PROLOG版本都是解释型的,1986年美国的Borland公司推出了编译型PROLOG-TurboPROLOG,并很快成为PC机上流行的PROLOG。现在运行在Windows环境下的可视化编程语言VisualPROLOG也已面世。但这些PROLOG语言版本属顺序逻辑程序设计语言。 2.1.3 面向对象语言 20世纪80年代以来,面向对象程序设计(ObjectOrientedProgramming,简称OOP)异军突起,发展迅速,如今已日渐成熟,并越来越流行起来。面向对象程序以其信息隐蔽、封装、继承、多态、消息传递等一系列优良机制,大大改善了软件的复杂性、模块性、重用性和可维护性,有望从根本上解决软件的生产效率问题。另一方面,由于面向对象程序设计的类、对象、继承等概念,与人工智能特别是知识表示和知识库产生了天然的联系。 因而,现在面向对象程序设计语言也成为一种人工智能程序设计语言,面向对象程序设计也被广泛引入人工智能程序设计,特别是知识工程、专家系统程序设计。面向对象程序设计语言也种类繁多,已发展成为一个大家族。其中最纯正、最具面向对象风格的语言当推Smalltalk,而最流行的OOP语言是C++,Java则是适于网络(Internet)环境的一种面向对象语言。 2.1.4 混合型语言 以上三种语言都各有所长,但也都有其不足之处。为了扬长避短,于是便出现了基于这三种语言的混合型语言。 1. 函数型与逻辑型相结合的语言 函数型与逻辑型语言的结合方式有耦合型和统一型两类。统一型又可分为具有归结语义的函数型语言和集成式语言两个子类。 ? 2. 函数型与面向对象相结合的语言 在LISP语言的基础上再扩充面向对象机制而产生的语言,称为函数型的面向对象程序设计语言(亦称为面向对象的LISP)。 3. 逻辑型与面向对象相结合的语言 2.2 函数型程序设计语言LISP LISP语言的主要特点是: (1) LISP程序由一组函数组成,程序的执行过程是函数的调用过程。 (2) 程序和数据在形式上是相同的,即都是符号表达式,简称为S─表达式。 (3) 递归是LISP语言的主要控制结构。 (4) 程序以交互方式运行。 2.2.1 LISP的程序结构与运行机制 LISP的程序一般由函数的定义和函数的调用两部分组成。其一般格式为: (DEFUN(函数名(形参表)函数体) (函数名(〖WB〗形参表)函数体) ? … (函数名(形参表)函数体)) ? (函数名实参表) (函数名实参表) … (函数名实参表) 其中的“DEFUN”是定义函数的关键字,“函数名”可以是系统的内部函数(名),也可以是用户用DEFUN定义的函数(名)。例如下面就是一个LISP程

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档