搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
程序设计语言理论
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787040284041
  • 作      者:
    陈意云,张昱[著]
  • 出 版 社 :
    高等教育出版社
  • 出版日期:
    2010
收藏
内容介绍
    《程序设计语言理论(第2版)》给出分析程序设计语言语法性质、操作性质和语义性质的一个框架,该框架基于λ演算系统。全书主要围绕着一系列的λ演算来组织,该系列中λ演算的类型系统依次变得越来越复杂,这些λ演算用来分析和讨论相应的程序设计语言概念,如多态性、抽象数据类型、依赖类型、子定型等。以类型系统为中心对程序设计语言进行的这种研究,在软件工程、语言设计、高性能编译器、高可信软件和形式程序验证等方面有着重要应用。<br>    《程序设计语言理论(第2版)》可作为高等院校计算机科学及相关专业的研究生教材,也可供计算机软件工程高级技术人员参考。
展开
目录
第1章  引言<br>1.1  基本概念<br>1.1.1  程序设计语言的建模<br>1.1.2  λ表示法<br>1.1.3  符号和约定<br>1.2  等式、归约和语义<br>1.2.1  公理语义<br>1.2.2  操作语义<br>1.2.3  指称语义<br>1.3  类型和类型系统<br>1.3.1  类型和类型系统<br>1.3.2  类型化语言的优点<br>1.4  归纳法<br>1.4.1  表达式上的归纳<br>1.4.2  证明上的归纳<br>1.4.3  良基归纳<br>习题<br><br>第2章  泛代数和代数数据类型<br>2.1  引言<br>2.2  代数、基调和项<br>2.2.1  代数<br>2.2.2  代数项的语法<br>2.2.3  代数以及项在代数中的解释<br>2.2.4  代换引理<br>2.3  等式、可靠性和完备性<br>2.3.1  等式<br>2.3.2  项代数<br>2.3.3  语义蕴涵和等式证明系统<br>2.3.4  完备性的形式<br>2.3.5  同余、商和演绎完备性<br>2.3.6  非空类别和最小模型完备性<br>2.4  同态和初始性<br>2.4.1  同态和同构<br>2.4.2  初始代数<br>2.5  代数数据类型<br>2.5.1  代数数据类型<br>2.5.2  初始代数语义和数据类型归纳<br>2.5.3  解释没有意义的项<br>2.5.4  错误值的其他解决方法<br>2.6  重写系统<br>2.6.1  基本定义<br>2.6.2  合流性和可证的相等性<br>2.6.3  终止性<br>2.6.4  临界对<br>2.6.5  左线性无重叠重写系统<br>2.6.6  局部合流、终止和合流之间的联系<br>2.6.7  代数数据类型的应用<br>习题<br><br>第3章  简单类型化λ演算<br>3.1  引言<br>3.2  类型和项<br>3.2.1  类型的语法<br>3.2.2  上下文有关语法<br>3.2.3  λ→项的语法<br>3,2.4  带积、和及其他类型的项<br>3.2.5  定型算法<br>3.3  证明系统<br>3.3.1  等式和理论<br>3.3.2  归约规则<br>3.3.3  有其他规则的归约<br>3.4  通用模型、可靠性和完备性<br>3.4.1  通用模型和项的含义<br>3.4.2  应用结构、外延性和框架<br>3.4.3  环境条件<br>3.4.4  类型可靠性和等式可靠性<br>3.4.5  没有空类型的完备性<br>3.4.6  有空类型的完备性<br>3.4.7  其他类型的通用模型<br>3.5  可计算函数编程语言<br>3.5.1  概述<br>3.5.2  PCF的语法<br>3.5.3  声明和语法美化<br>3.5.4  程序和结果<br>3.5.5  公理语义<br>3.5.6  操作语义<br>3.5.7  由各种形式的语义定义的等价关系<br>3.5.8  记录和n元组<br>3.6  各种归约策略<br>3.6.1  归约策略<br>3.6.2  最左归约和惰性归约<br>3.6.3  并行归约<br>3.6.4  急切归约<br>习题<br><br>第4章  类型化λ演算的模型<br>4.1  引言<br>4.2  递归函数和不动点算子<br>4.2.1  递归函数和不动点算子<br>4.2.2  有不动点算子的急切归约<br>4.2.3  PCF语言的编程实例<br>4.3  论域理论模型和不动点<br>4.3.1  递归定义和不动点算子<br>4.3.2  完全偏序集合、提升和笛卡儿积<br>4.3.3  连续函数<br>4.3.4  不动点和完备连续层级<br>4.3.5  PCF的CPO模型<br>4.4  不动点归纳<br>习题<br><br>第5章  命令式程序的语义<br>5.1  引言<br>5.2  Kernel语言<br>5.2.1  存储单元<br>5.2.2  表达式的解释<br>5.2.3  程序状态<br>5.3  操作语义<br>5.3.1  表达式的求值<br>5.3.2  命令的执行<br>5.4  指称语义<br>5.4.1  带状态的类型化λ演算<br>5.4.2  语义函数<br>5.4.3  操作语义和指称语义的等价<br>5.5  Kernel语言的Hoare逻辑<br>5.5.1  一阶断言<br>5.5.2  证明规则<br>5.5.3  可靠性<br>5.5.4  小结<br>习题<br><br>第6章  递归类型<br>6.1  引言<br>6.2  归纳和余归纳<br>6.2.1  余归纳现象<br>6.2.2  归纳和余归纳指南<br>6.2.3  代数和余代数<br>6.3  递归类型<br>6.3.1  递归类型总览<br>6.3.2  递归的数据结构<br>6.4  归纳类型和余归纳类型<br>6.4.1  归纳类型和余归纳类型总览<br>6.4.2  帮助理解的实例<br>习题<br><br>第7章  多态性<br>7.1  引言<br>7.1.1  概述<br>7.1.2  类型作为函数变元<br>7.2  直谓式多态演算<br>7.2.1  类型和项的语法<br>7.2.2  和其他形式多态性的比较<br>7.2.3  等式证明和归约<br>7.2.4  ML风格的多态声明<br>7.3  非直谓式多态演算<br>7.3.1  引言<br>7.3.2  非直谓式多态λ演算的表达力<br>7.3.3  归约的终止性<br>7.4  数据抽象和存在类型<br>7.5  类型表达式的分类<br>7.5.1  类型表达式的种类<br>7.5.2  类型表达式的定类与相等<br>7.5.3  项的定型<br>习题<br><br>第8章  依赖类型<br>8.1  引言<br>8.2  带依赖类型的演算<br>8.2.1  依赖积类型<br>8.2.2  依赖和类型<br>8.3  带依赖类型的程序设计<br>8.3.1  简化DML的实例<br>8.3.2  简化DML的定义<br>8.4  广义积与广义和<br>8.4.1  广义积与广义和概念<br>8.4.2  带广义积与广义和的直谓式演算<br>8.4.3  ML模块语言<br>8.4.4  用积与和来表示模块<br>8.4.5  直谓性以及两个全域之间的联系<br>习题<br><br>第9章  命题和类型<br>9.1  引言<br>9.2  构造逻辑<br>9.2.1  构造语义<br>9.2.2  构造逻辑<br>9.2.3  命题当作类型<br>9.3  经典逻辑<br>9.3.1  经典逻辑和构造逻辑的区别与联系<br>9.3.2  经典逻辑的规则<br>9.3.3  推导消去形式<br>9.3.4  证明的动态性<br>习题<br><br>第10章  子定型<br>10.1  引言<br>10.2  有子定型的简单类型化λ演算<br>10.3  记录<br>10.3.1  记录子定型的一般性质<br>10.3.2  带记录和子定型的类型化演算<br>10.4  子定型的语义模型<br>10.4.1  概述<br>10.4.2  子定型的转换解释<br>10.4.3  类型的子集解释<br>10.5  对象的递归记录模型<br>10.5.1  递归记录类型<br>10.5.2  递归类型的子定型<br>习题<br><br>第11章  类型推断<br>11.1  引言<br>11.2  带类型变量的λ→类型推断<br>11.2.1  语言λt→<br>11.2.2  代换、实例与合一<br>11.2.3  主定型算法<br>11.2.4  隐式定型<br>11.2.5  定型和合一的等价<br>11.3  带多态声明的类型推断<br>11.3.1  ML类型推断和多态变量<br>11.3.2  两组隐式定型规则<br>11.3.3  类型推断算法<br>习题<br>参考文献
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证