书籍详情

函数程序设计语言:计算模型 编译技术 系统结构

函数程序设计语言:计算模型 编译技术 系统结构

作者:郑纬民,周光明,田新民编著

出版社:清华大学出版社 广西科学技术出版社

出版时间:1997-11-01

ISBN:9787302022343

定价:¥20.00

内容简介
  内容简介本书详细论述了函数程序设计语言的计算模型、编译技术以及面向函数程序设计语言的系统结构。其主要内容包括:函数程序设计语言,λ演算,函数语言的归约计算方法,函数语言的图重写计算模型,图重写计算模型描述语言CIL,多态类型及类型检查,自由变量的清除与优化组合子,惰性模式匹配及编译方法,严格性分析方法,编译时粒度分析及估算方法,存储管理及垃圾单元回收,多机并行图重写执行模型HPGREM,并行抽象机PAM/TGR及体系结构等。本书适合于从事计算机系统结构、信息处理、并行处理技术研究的科技人员阅读,也可作为计算机等专业的研究生和高年级本科生的教材和教学参考书。
作者简介
  郑纬民男,1946年生,浙江宁波人。1970年毕业于清华大学自动控制系并留校任教。1982年在清华大学计算机系获硕士学位。现为清华大学计算机系教授、博士生导师。1985年至1986年曾在纽纸头州立大学石溪分校从事分布操作系统研究。1989年至1991年曾在英国南安普敦大学参加函数语言并行编译系统的研究。郑纬民多年来一直从事并行处理与分布计算机系统、面向AI体系结构以及说明性语言的编译方法和程序开发环境等教学和研究工作,取得了—系列成果。近几年来,参加或负责的国家攻关、863计划和自然科学基金项目有“THUDS分布计算机”、“并行图归纳智能工作站”、“军用软件开发新技术”、“可扩展并行机群系统”等10余项。研究成果达到了国际先进水平或国内领先水平,多次获得国家教委科技进步奖。近几年来,在国内外学术刊物和学术会议上发表论文80余篇。著作有《计算机系统结构)和《函数语言及其实现技术》等
目录
     目录
   第1章 引论
    1.1 函数式程序设计语言
    1.1.1 APL语言
    1.1.2 FP语言
    1.1.3 ML语言
    1.1.4 Lisp语言
    1.1.5 SASL,KRC和Miranda语言
    1.1.6 Haskel1语言
    1.1.7 其它的函数语言
    1.2 函数语言的基本特征和实现论题
    1.2.1 函数语言的基本特征
    1.2.2 程序的执行效率
    1.2.3 主要实现论题
    1.3 函数语言的图重写实现技术
    1.4 本章小结
   第2章 函数式程序设计语言
    2.1 函数语言的特点
    2.1.1 变量名和值
    2.1.2 执行顺序
    2.1.3 循环和递归
    2.1.4 数据结构
    2.1.5 函数作为值
    2.2 ML语言简介
    2.2.1 ML的特点
    2.2.2 类型
    2.2.3 几点说明
    2.3 SML标准类型
    2.3.1 基本类型
    2.3.2 表类型
    2.3.3 元组类型
    2.3.4 函数的类型和表达式
    2.4 sML标准函数
    2.4.1 标准布尔型函数
    2.4.2 标准算术运算函数和运算符的重载
    2.4.3 标准字符串函数
    2.4.4 标准表函数
    2.4.5 字符、字符串和表
    2.4.6 比较运算符
    2.5 SML函数定义
    2.5.1 函数
    2.5.2 约束变量的类型
    2.5.3 定义
    2.5.4 条件表达式
    2.5.5 递归和函数定义
    2.5.6 访问元组约束变量中的元素
    2.5.7 模式匹配
    2.5.8 局部定义
    2.6 SML类型
    2.6.1 类型表达式和类型缩写(abbreviatedtypes)
    2.6.2 类型变量和多态性
    2.6.3 定义新类型
    2.6.4 抽象数据类型
    2.6.5 树
    2.7 本章小结
   第3章 λ演算
    3.1 λ演算的基本概念和定义
    3.2 λ演算的归约
    3.3 递归定义
    3.4 纯λ演算中的算术
    3.5 本章小结
   第4章 函数语言的归约计算方法
    4.1 归约计算的语义
    4.2 正规序归约的语用
    4.2.1 串归约(stringreduction)
    4.2.2 标准环境归约(standardenvironmentreduction)
    4.2.3 图归约(graphreducti0n)
    4.2.4 全惰性图归约(fulllazygraphreduction)
    4.2.5 惰性图归约(1azygraphreduction)
    4.2.6 图归约的特点
    4.3 组合子图归约(c0mbinator-basedgraphreduction)
    4.3.1 基本思想
    4.3.2 组合子及其性质
    4.3.3 超组合子性质
    4.4 本章小结
   第5章 函数语言的图重写计算模型
    5.1 计算对象的描述形式
    5.2 计算的操作方式
    5.3 计算的控制方式
    5.3.1 并行性开发策略
    5.3.2 并行计算的控制管理方法
    5.3.3 并行计算任务的粒度(granularity)
    5.4 本章小结
   第6章 编译中间语言
    6.1 中间语言的基本概念
    6.2 CIL程序的基本描述形式
    6.3 CIL程序例子
    6.4 CIL程序执行算法
    6.5 CIL语言对函数式程序的支持
    6.5.1 TermL模式结构的转换
    6.5.2 非平坦TermL的转换
    6.5.3 标记TermR
    6.6 本章小结
   第7章 多态类型及类型检查
    7.1 多态类型
    7.2 程序的表示
    7.3 类型推导与类型合一
    7.4 类型变量与环境
    7.5 类型推导算法
    7.5.1 类型推导算法中用到的函数
    7.5.2 类型推导算法
    7.6 本章小结
   第8章 自由变量的消除与优化组合子
    8.1 λ-提升
    8.1.1 λ-提升方法
    8.1.2 λ-提升方法的评价
    8.2 最大自由表达式(mfe)抽取
    8.2.1 mfe抽取算法
    8.2.2 最大自由表达式抽取方法的分析
    8.3 函数部分作用共享分析
    8.3.1 部分作用的共享及其表示
    8.3.2 共享分析方法
    8.4 优化组合子生成方法
    8.5 本章小结
   第9章 惰性模式匹配及其编译方法
    9.1 模式与模式匹配
    9.2 最小扩展模式与模式匹配树
    9.2.1 模式匹配谓词及其性质
    9.2.2 惰性模式匹配算法的存在性与最小扩展模式
    9.2.3 MEPⅡ的生成和匹配树的构造
    9.3 模式的平坦化和参量一致化变换
    9.3.1 两个简单的转换方法及其效率
    9.3.2 重写规则的生成方法
    9.4 本章小结
   第10章 惰性函数语言程序严格性分析方法
    10.1 抽象解释和严格性分析方法
    10.1.1 基于抽象解释的严格性分析方法
    10.1.2 严格性分析与函数程序的并行性开发
    10.1.3 惰性计算方式和结构数据的计算
    10.2 投影分析分析方法
    10.2.1 投影和计算的描述
    10.2.2 基于投影分析的严格性分析方法
    10.2.3 举例
    10.3 并行性开发方法的优化
    10.3.1 算子
    10.3.2 并行性开发方法
    10.4 本章小结
   第11章 编译时粒度分析及估算方法
    11.1 现状与问题
    11.2 K0zen语义与分布函数
    11.3 分布函数与程序粒度的关系
    11.4 程序粒度分析的系统化方法
    11.5 细粒度任务的收拢(coalescing)原理
    11.6 任务颗粒的分类及合并
    11.7 引入启发因素的编译时粒度分析算法HCGA
    11.8 实验及与相关工作的比较
    11.9 本章小结
   第12章 存储管理及垃圾单元回收
    12.1 概述
    12.2 Ash0ke的改进引用计数法
    12.2.1 Ashoke算法
    12.2.2 Ashoke算法的正确性证明
    12.2.3 并行环境中的Ash0ke算法实现
    12.3 基于引用计数的垃圾回收技术
    12.3.1 经典的引用计数法
    12.3.2 ARVIND/THOMAS的带权引用计数法
    12.3.3 垃圾单元回收的惰性方法
    12.3.4 带权的垃圾单元惰性回收方法
    12.4 FL/TBD/TBC/CRC与CM分立的垃圾回收开销分析
    12.5 FL/TBD/TBC/CRC与CM混合的垃圾回收开销分析
    12.6 并行系统中的垃圾单元回收
    12.7 本章小结
   第13章 多相并行图重写执行模型HPGREM
    13.1 并行执行模型的研究现状
    13.2 HPGREM的形式化描述
    13.2.1 基本定义
    13.2.2 形式化描述
    13.3 存储管理及执行环境组织
    13.4 并行性开发策略
    13.4.1 并行性开发
    13.4.2 任务分布的Lazy-Eager原理
    13.4.3 基于LEDT原理的任务分布算法
    13.5 并行执行模型HPGREM的多相性质
    13.6 本章小结
   第14章 并行抽象机PAM/TGR及体系结构
    14.1 概述
    14.2 存储器组织及数据表示
    14.2.1 存储器组织
    14.2.2 图结点及数据表示
    14.3 并行抽象机PAM/TGR的指令系统
    14.3.1 并行抽象机指令集
    14.3.2 抽象机的寻址方式
    14.3.3 并行抽象机PAM/TGR的优化编译器
    14.4 并行抽象机的指令执行算法
    14.4.1 环境生成指令(push)执行算法
    14.4.2 环境拷贝指令(copy)执行算法
    14.4.3 重写指令(grew)执行算法
    14.4.4 重写任务的管理指令(take,mask,sndt,recy)执行算法
    14.4.5 调用基元操作与存储管理指令(call,flsh)执行算法
    14.5 并行抽象机PAM/TGR的体系结构
    14.6 并行抽象机PAM/TGR的性能评价
    14.6.1 基于Benchmark的PAM/TGR性能测试
    14.6.2 与相关系统的性能比较
    14.7 本章小结
    参考文献
   
猜您喜欢

读书导航