Haskell程序设计基础(微课版)
提供课件、大纲,咨询QQ:2301891038(仅限教师)。本书用Haskell讲解程序设计,便于初学者理解和掌握函数程序设计概念方法。对于已经掌握一门程序设计语言的学生,本书将为传统的命令式和面向对象的程序设计语言提供了很有意义的视角,对程序设计具有较全方位的理解,成为更好的程序员。书中配备大量习题,难度适中,基于有趣的实际问题。提供全套PPT教学课件和讲解视频。

作者:乔海燕、周晓聪

丛书名:面向新工科专业建设计算机系列教材

定价:49元

印次:1-1

ISBN:9787302608271

出版日期:2022.07.01

印刷日期:2022.06.28

图书责编:杨帆

图书分类:教材

电子书
在线购买
分享
内容简介
作者简介
前言序言
资源下载
查看详情 查看详情 查看详情

本书用Haskell 语言从函数式程序设计角度讲解计算机程序设计。本书前半部分介绍程序设计的基本内容, 包括数据、类型、函数、递归函数、模块、测试、多态和重载等;后半部分则突出了函数程序设计的特色内容, 包括高阶函数、代数类型、惰性计算和单子等。 全书内容编排由浅入深,语言表达清晰准确,每章都提供了难度适中的练习,各章内容都配备讲解视频, 十分便于自学。 本书是为程序设计初学者编写,可作为高等院校各专业学习程序设计的教材,也可供从事计算机软件工作 的技术人员学习函数式程序设计参考。

乔海燕,中山大学计算机学院副教授,常年讲授程序设计课程。曾编写《数据结构与算法实验实践教程》(清华2012);翻译《Haskell函数程序设计基础》(科学2015),《算法设计与应用》(机工2018)

前 言 学习程序设计,必须选择一种高级程序设计语言。不同于其他介绍程序设计入门的一些书籍,本书选择了Haskell 函数式程序设计语言从函数式程序设计角度介绍程序设计。 高级程序设计语言大致可分为命令式和声明式两种。命令式语言如C、Java 和Python 等,这类语言的程序用语句序列描述如何一步步完成一个计算,其特点是有副作用。例如,对于任意正整数n,计算1~n的和1 + 2 + … + n,命令式语言的程序通常形如: s = 0 for (int i = 1; i <= n; i++) s = s + i 这里第一行设置变量s 的初值为0,接下来的循环语句(后两行)不断修改变量s 的值,最后s 的值便是计算结果。这种程序重点描述如何计算。 Haskell 函数式语言属于声明式语言,这种语言的程序用计算逻辑表达计算,不需要描述计算次序,其特点是无副作用。对于前面的求和问题,在Haskell 语言中可以定义数学函数sum: sum 0 = 0 sum n = n + sum (n-1) 在这里,计算1~n之和的Haskell 函数式程序是表达式sum n,sum 是一个纯数学函数,n 是数学意义上的变量,没有副作用。函数式程序重点描述计算什么。 函数式程序设计语言是建立在计算模型演算上的通用高级程序设计语言。由于它具有更高的抽象层次,更接近于人类习惯的数学思维,因此,更便于初学者理解和掌握。 Haskell 函数式程序设计语言具有下列特点。 (1)程序简洁优美,语义清晰,容易理解。例如,对于有一定程序设计基础的程序员,用命令式语言实现快速...

课件下载

样章下载

暂无网络资源

扫描二维码
下载APP了解更多

目录
荐语
查看详情 查看详情
目  录

第 1 章  计算机程序设计  1 

1.1  命令式程序设计  1 

1.1.1  程序设计的概念  1 

1.1.2  命令式算法和伪代码 2 

1.1.3  命令式程序  3 

1.2  函数程序设计  4 

1.2.1  程序是函数  4 

1.2.2  Haskell 函数程序  5 

1.2.3  Haskell 函数语言的特点 5 

1.3  Haskell 解释器和编译器  6 

1.3.1  下载 Haskell 解释器和编译器 7 

1.3.2  运行 Haskell 程序 8 

1.3.3  解释器常用命令 10 

1.4  习题  10 

第 2 章  函数程序设计基础  12 

2.1  程序与函数 12 

2.1.1  数学函数 13 

2.1.2  Haskell 函数 14 

2.2  数据和类型 15 

2.2.1  数据类型  15 

2.2.2  数值类型  15 

2.2.3  布尔类型  17 

2.2.4  查看表达式的类型  18 

2.2.5  字符和字符串 19 

2.2.6  列表类型   19 

2.2.7  多元组类型  21 

2.2.8  多元组类型和列表类型的对比 22

2.2.9  函数类型  23 

2.2.10  函数应用与类型推导规则 23 

2.3  Haskell 函数定义 24 

2.3.1  函数定义语法规则 24 

2.3.2  函数定义举例  26 

2.4  递归函数 31 

2.4.1  阶乘函数  31 

2.4...

l 本书用函数式程序设计语言Haskell讲解计算机程序设计,具有抽象层次高,程序语义简洁清晰优美,便于初学者理解程序设计的思想方法。

l 本书内容覆盖计算机程序设计基本知识,特别是函数式程序的特色内容,既有浅显易懂的例题习题,也有比较有趣的程序练习。

l 提供MOOC视频公开课,在线测评练习,便于自学。