当前位置:首页 > 工业技术
LISP程序设计
LISP程序设计

LISP程序设计PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:(美)温斯顿(P.H.Winston),(美)霍恩(B.K.P.Horn)著;黄昌宁,陆玉昌译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:1983
  • ISBN:15235·49
  • 页数:365 页
图书介绍:
《LISP程序设计》目录

目录 1

第一部分 5

第一章 理解符号处理 5

1.1符号处理类似于处理词和句子 5

1.2使计算机有智能,符号处理必不可少 6

1.3LISP正是要学的符号处理语言 7

1.4本书第一部分介绍LISP 8

1.5本书第二部分介绍LISP的能力 9

1.6对LISP的几种荒诞的说法 10

提要 11

文献 11

2.1LISP的意思是符号处理 14

第二章 基本LISP函数 14

2.2LISP的程序和数据都由S-表达式构成 15

2.3LISP既可以处理定点数又可以处理浮点数 17

2.4CAR和CDR使表分离 17

2.5常用引号表示有意识地禁止求值 18

2.6把多个CAR和CDR组合在一起使编制程序更容易 19

2.7原子都有值 20

2.8APPEND,LIST和CONS用来构造表 21

2.9LENGTH,REVERSE,SUBST和LAST使基本函数更加齐全 23

2.10解释程序对S-表达式求值 24

2.11EVAL引起再求值 25

提要 26

3.1DEFUN使用户能够产生一些新函数 27

第三章 定义,谓词,条件式及辖域 27

3.2谓词是返回T或NIL的函数 30

3.3AND,OR和NOT用作逻辑运算 33

3.4谓词帮助COND在各种可能值中选择一个值 34

3.5COND使DEFUN能定义更多的函数 35

3.6变量可以为自由变量也可以为约束变量 35

3.7LISP既不是换指示点调用也不是赋值调用 37

3.8自由变量的值是动态确定,而不是词法确定 37

3.9函数名也能作为自变量 37

提要 38

4.1程序设计要求选择控制结构 39

4.2递归允许程序自己使用自己 39

第四章 递归和迭代 39

4.3关于集合和二叉树的问题 43

4.4关于C曲线及龙曲线的问题 45

4.5关于改写逻辑表达式的问题 46

4.6处理表时往往需要使用MAPCAR的迭代 47

4.7PROG设立变量且提供清晰的迭代 49

4.8基于PROG的迭代应该细心地使用 50

4.9问题及其表示确定着合适的控制结构 51

提要 52

文献 52

第五章 特性,A-表,数组和存取函数 53

5.1特性和特性值扩充了原子和值的概念 53

5.2PUTPROP和GET是特性表的两个主要函数 53

5.3ASSOC函数可以从联结表中检索点对 54

5.4STORE和ARRAY是数组使用的两个函数 55

5.5存取函数简化了数据的交互作用 56

提要 57

第六章 使用LAMBDA定义 58

6.1LAMBDA定义匿名的函数 58

6.2常用LAMBDA式来连接函数与自变量表 60

6.3MAPCAN函数便于筛选 61

6.4函数定义的风格因人而异 62

提要 64

第七章 打印,读入和原子处理 65

7.1PRINT和READ函数便于会话 65

7.2梵塔问题 66

7.4原子的分离,结合和生成 67

7.3专门的约定有可能产生特殊的原子名 67

7.5除PRINT和READ之外的特殊输入/输出函数 68

7.6易于安排的打印格式 69

提要 72

文献 72

第八章 定义FEXPR型和MACRO型函数 73

8.1FEXPR型函数是一些不对其自变量求值的函数 73

8.2MACRO型函数先翻译后执行 74

提要 77

第九章 表的存贮,回收和手术 78

9.1内存单元网表示表 78

9.3CONS通过在自由单元中存放指针来建立新表 79

9.2单引号标记是函数QUOTE的简写形式 79

9.4无用单元收集程序为自由存贮表回收内存单元 80

9.5APPEND用复制方法来建立新的表结构 83

9.6NCONC,RPLACA,RPLACD和DELETE危险地替代内存单元的内容 84

9.7EQUAL与EQ并不相同 89

提要 89

文献 90

第十章 有关二值图象的例子 91

10.1二值图象容易处理 91

10.2用二值图象的分析可以找到物体 91

10.3在二值图象中求得的许多特征可以用来进行分类 95

10.4二值图象的成分可以用两趟扫视来加以编号 99

文献 101

提要 101

第十一章 有关搜索的例子 102

11.1宽度优先和深度优先是基本的搜索策略 102

11.2使宽度优先和深度优先搜索变得更方便的一种节点队列 103

11.3最佳优先搜索和爬山策略要求分类 108

11.4分类问题 109

11.5量水问题 112

11.6皇后问题 114

提要 115

文献 115

第十二章 有关数学的例子 116

12.1中缀表示很容易转换成前缀表示 116

12.2用S-表达式表示稀疏矩阵很有用 119

12.3用尾递归能求数的平方根 122

12.4电路网络的阻抗计算问题 123

12.5利用嵌套函数求代数方程的根 124

提要 131

文献 131

第二部分 135

第十三章 积木世界 135

13.1积木世界系统制订一个规划 135

13.2积木世界系统要求某些数字捣弄函数 136

13.3积木世界系统的函数是比较浅显的 136

13.4数字捣弄函数是可以伪造的 140

13.5仿真是简单的 141

提要 142

文献 142

第十四章 好的程序设计规则和调试 143

14.1积木世界系统说明了一些好的编程实践规则 143

14.2用BREAK来停止过程的运行常常是有用的 144

14.3TRACE使得函数能打印出它们的自变量和函数值 146

14.4LISP系统提供了许多调试特性 148

提要 149

第十五章 回答有关目标的问题 150

15.1积木世界系统能在一定程度上反省 150

15.2记忆函数的调用产生一段有用的历程 151

15.3产生一个新的定义函数的函数可能是很方便的 154

提要 159

第十六章 从数据中提取函数 160

16.1函数和物体的类型形成一张表格 160

16.2自变量可以提供其自身的过程 161

16.3FUNCALL使得函数名或其描述可以被计算 161

16.4数据驱动的程序设计日趋普及 162

提要 164

文献 164

第十七章 符号的模式匹配和简单的定理证明 165

17.1用LISP不难实现基本的模式匹配 165

17.2匹配意味着对相似S-表达式的比较 165

17.3同时约束增加了匹配操作的表现能力 169

17.4限制条件规定一个模式变量可以匹配什么 171

17.5归结是在命题演算中证明定理的一种方法 174

17.6基于归结原理的定理证明是靠证明它们不可能为假来实现的 178

17.7许多有待解决的匹配问题 178

提要 179

文献 179

第十八章 使用if-then规则的专家问题求解 180

18.1识别世界能说明if-then系统是如何工作的 180

18.2事实与规则都不难表达 180

18.3正向链是从事实推出结论 184

18.4逆向链是从假设演绎到事实 185

提要 189

文献 189

19.1用扩充转移网络表达英语句法 190

第十九章 以解释方式执行的扩充转移网络 190

19.2满足一个扩充转移网络构成一种匹配 191

19.3根据扩充转移网络不难生成LISP程序 191

19.4按照保留说明执行的一种ATN解释程序 195

19.5寄存器增加了ATN描述的能力 199

19.6ATN可以包含成分说明 201

提要 202

文献 203

第二十章 扩充转移网络的编译 204

20.1ATN可以根据明确的说明来编译 204

20.2编译程序视程序为数据 204

20.5LISP本身可以是编译的也可以是解释的 209

20.3编译程序通常比解释程序更难生成 209

20.4编译程序通常是第一流的工作 209

提要 210

文献 210

第二十一章 编写程序的程序和自然语言接口 211

21.1工具世界是一个例题 211

21.2回答问题分四步来完成 211

21.3简单程序能够查点和枚举描述-匹配物 213

21.4问答程序先建立一段程序然后执行之 215

21.5搜索程序能够自动编写 216

21.6用一个简单的ATN来确定如何建立导引分析树 219

21.7特性尚不充分 219

文献 220

提要 220

第二十二章 框架的实现 221

22.1框架是一种广义的特性表 221

22.2框架可以用嵌套的联结表来表示 221

22.3FGET,FPUT和FREMOVE是基本的框架处理函数 223

22.4能够利用DEFAULT和IF-NEEDED幽灵的简单程序 226

22.5通过AKO槽获取继承 227

22.6FPUT+和REMOVE+呼唤幽灵 228

提要 228

文献 228

第二十三章 用LISP解释LISP 230

23.1简单的符号处理语言很容易解释 230

23.2动态的和词法的变量约束都能处理 234

23.3LISP最好用LISP来定义 237

23.4优异的控制结构往往起源于基本的LISP解释程序 238

提要 238

文献 238

习题答案 239

文献目录 286

附录 305

附录一 INTERLISP 305

附录二 基本LISP函数 309

附录三 MACLISP的使用 312

附录四 注释 314

译者附加参考资料 320

PDP-11机上LISP语言使用说明 320

索引 357

相关图书
作者其它书籍
返回顶部