图书介绍

Haskell函数式编程基础 原书第3版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

Haskell函数式编程基础 原书第3版
  • (英)汤普森著 著
  • 出版社: 北京:科学出版社
  • ISBN:9787030441683
  • 出版时间:2015
  • 标注页数:529页
  • 文件大小:179MB
  • 文件页数:549页
  • 主题词:函数-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Haskell函数式编程基础 原书第3版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 函数式程序设计简介1

1.1计算机与建模1

1.2什么是函数2

1.3图形与函数3

1.4类型4

1.5函数式程序设计语言Haskell6

1.6表达式与计算7

1.7定义8

1.8函数定义10

1.9类型与函数式程序设计12

1.10计算与求值13

1.11函数式程序设计的精髓14

1.12领域专用语言15

1.13图形的两种模型16

1.14测试、性质和证明19

第2章 认识Haskell与GHCi24

2.1第一个Haskell程序24

2.2在工作中使用Haskell25

2.3使用GHCi26

2.4标准库Prelude和Haskell函数库30

2.5模块30

2.6例子:Pictures31

2.7错误与错误信息34

第3章 基本类型与定义37

3.1布尔类型Bool37

3.2整数类型:Integer和Int40

3.3重载43

3.4守卫43

3.5字符和串47

3.6浮点数Float50

3.7语法53

第4章 设计与书写程序60

4.1如何开始一个Haskell程序的设计60

4.2逐步求解问题:局部定义64

4.3自定义类型:枚举类型70

44递归72

4.5实践中的原始递归76

4.6扩展练习:图形78

4.7递归的一般形式81

4.8程序测试83

第5章 数据类型、多元组与列表88

5.1多元组和列表简介88

5.2元组类型90

5.3代数类型简介93

5.4本书对列表的介绍方法98

5.5 Haskell的列表99

5.6列表概括101

5.7图书馆数据库104

第6章 列表程序设计110

6.1通用函数:多态110

6.2 Haskell引导库Prelude中的列表函数112

6.3认识Haskell函数库115

6.4 Picture例子的实现119

6.5扩展练习:图形的另一种实现124

6.6扩展练习:有位置的图形127

6.7扩展练习:超市账单130

6.8扩展练习:纸牌和纸牌游戏134

第7章 定义列表上的函数137

7.1再谈模式匹配137

7.2列表与列表模式138

7.3列表上的原始递归141

7.4寻找原始递归定义143

7.5列表上的一般递归147

7.6例子:文本处理150

第8章 游戏:Haskell的1/O156

8.1石头-剪刀-布的策略156

8.2为什么1/O是一个问题159

8.3输入/输出160

8.4 do语法163

8.5迭代与递归166

8.6石头-剪刀-布:玩游戏169

第9章 程序推理173

9.1理解定义173

9.2测试与证明175

9.3定义性、终止性和有限性176

9.4一些逻辑知识177

9.5归纳法178

9.6归纳证明的进一步例子181

9.7推广证明目标186

第10章 推广:计算模型190

10.1列表上的计算模式190

10.2高阶函数:函数作为参数193

10.3折叠与原始递归197

10.4推广:拆分列表201

10.5再谈实例202

第11章 高阶函数205

11.1运算:函数的复合和应用205

11.2函数的表达式:λ抽象209

11.3部分应用211

11.4卡瑞式函数215

11.5定义高阶函数219

11.6验证与通用函数223

第12章 高级程序开发233

12.1再谈Picture233

12.2函数作为数据:策略组合子236

12.3函数作为数据:正则表达式匹配238

12.4函数作为数据的实例241

12.5例子:建立索引243

12.6实践中的程序开发248

12.7理解程序251

第13章 重载,类族和类型检测254

13.1为什么使用重载?254

13.2引进类族255

13.3签名和实例258

13.4 Haskell的预定义类族265

13.5类型检测和类型推导概述273

13.6单态类型检测274

13.7多态类型检测277

13.8类型检测与类族284

第14章 代数类型287

14.1代数类型回顾288

14.2递归代数类型289

14.3多态代数类型296

14.4程序错误的表示299

14.5使用代数类型设计系统303

14.6代数类型与类族308

14.7代数类型的推理313

第15章 实例研究:Huffman编码319

15.1 Haskell的模块319

15.2模块设计323

15.3编码与译码324

15.4实现一326

15.5构造Huffman树328

15.6设计329

15.7实现二330

第16章 抽象数据类型338

16.1类型表示338

16.2 Haskell抽象数据类型机制339

16.3队列343

16.4设计347

16.5仿真348

16.6实现仿真350

16.7查找树354

16.8集合360

16.9关系和图366

16.10评注374

第17章 惰性计算376

17.1惰性计算376

17.2计算规则与惰性计算378

17.3再谈列表概括382

17.4数据导向编程389

17.5实例:分析表达式392

17.6无穷列表402

17.7为什么使用无穷列表407

17.8实例:仿真410

17.9再谈证明412

第18章 单子程序设计419

18.1输入/输出程序419

18.2深入I/O422

18.3计算器425

18.4再谈do记法428

18.5单子:为函数式程序设计定制的语言429

18.6例子:树上的单子式计算435

第19章 领域专用语言442

19.1程序语言无处不在442

19.2为什么在Haskell中嵌入DSL ?445

19.3浅嵌入和深嵌入446

19.4处理正则表达式的DSL449

19.5单子式DSL453

19.6表示计算的DSL:QuickCheck中的数据生成456

19.7深入DSL461

第20章 时间与空间行为463

20.1函数的复杂度463

20.2计算的复杂度467

20.3集合的实现471

20.4空间行为472

20.5再谈折叠475

20.6避免重复计算:记忆481

第21章 结论487

21.1函数式程序设计的威力487

21.2深入Haskell488

21.3网络上的Haskell489

21.4其他函数式程序设计语言490

附录A 函数式,命令式和OO程序设计492

A.1值与状态492

A.2函数与变量493

A.3程序验证493

A.4记录和元组494

A.5列表和指针495

A.6高阶函数497

A.7多态497

A.8定义类型与类族498

A.9列表概括498

A.10惰性计算499

A.11状态,无穷列表和单子499

A.12结论499

附录B 术语解释501

附录C Haskell运算符509

附录D Haskell实践511

D.1实现511

D.2下载Craft3e代码511

D.3使用GHCi511

D.4 Haskell编辑器511

附录E GHCi错误513

E.1语法错误513

E.2类型错误515

E.3程序错误517

E.4模块错误517

E.5系统信息517

附录F 项目建设519

F.1游戏与智力测验519

F.2 Web图形520

F.3逻辑520

F.4投票系统521

F.5有穷自动机522

F.6领域专用语言522

参考文献523

索引526

热门推荐