致谢
摘要
Abstract
引言
第1章软件开发方法及其支持工具
1-1概论
1-2软件自动化的层次
1-3软件开发工具
1-4典型的形式化方法及其支持工具介绍
1-4-1 VDM方法
1-4-2 Z方法
1-4-3 RAISE方法
1-4-4模型检测方法
1-4-5 B方法[35]
1-4-6南京大学自动化试验性系统[34]
1-4-7XYZ方法[49]
1-5PAR方法
1-5-1 PAR方法总体思想
1-5-2 PAR方法的组成
1-5-3应用PAR方法开发正确的Apla程序
1-5-4 PAR方法的系列转换工具
1-6小结[43]
第2章预定义ADT类型的支持
2-1理论基础
2-1-1抽象数据类型(AD)[67]
2-1-2部分实现理论
2-1-3软件重用理论[66]
2-2高可靠性预定义ADT库当中的几个基本问题
2-2-1什么是最基本的操作[18]
2-2-2操作如何实现
2-2-3如何保证可靠性
2-3预定义ADT库的设计与实现
2-3-1预定义ADT库的总体设计
2-3-2预定义ADT库的具体设计实现
2-4预定义ADT类型库的使用
第3章用户自定义ADT类型支持
3-1什么是自定义ADT类型
3-2 Apla中的自定义ADT类型机制
3-3举例
3-3-1队列
3-3-2栈
第4章泛型程序设计的支持
4-1泛型程序设计的定义及功能
4-1-1什么是泛型程序设计
4-1-2泛型程序设计的作用[44]
4-2 APLA中的泛型机制
4-2-1类型参数化
4-2-2子程序参数化
4-3泛型程序设计的实现方法[44]
4-3-1同类静态翻译
4-3-2异类静态翻译
4-3-3动态类装载
4-4举例
4-4-1 kleene 算法
4-4-2二叉树前中后序遍历
4-4-3n皇后问题
4-4-4通用最小生成树
第5章Apla→Delphi自动程序转换器的设计和实现
5-1 Apla语言
5-2 Object Pascal语言
5-3转换系统的总体设计
5-4词法分析的设计与实现
5-4-1词法分析的设计
5-4-2词法分析的实现
5-4-3词法分析的输入
5-4-4词法分析的输出
5-4-5词法分析的功能
5-5语法分析的设计与实现
5-5-1语法分析的设计
5-5-2语法分析的实现
5-5-3语法分析的输入
5-5-4语法分析的输出
5-5-5语法分析的功能
5-6出错处理
5-6-1词法错误
5-6-2语法错误
5-6-3语义错误
5-7目标代码优化
5-8符号表
5-9转换规则
5-9-1类型定义转换
5-9-2变量、常量说明转换
5-9-3表达式的转换
5-9-4语句的转换
5-9-5过程、函数及其调用的转换
5-9-6转换规则的正确性
5-10Apla→Delphi算法程序转换器的实现和使用
5-10-1用户界面的实现
5-10-2输入Apla算法
5-10-3安装进入Apla→Delphi算法程序转换器
5-11转换实例
5-11-1问题:宽度优先遍历图
5-11-2问题:寻找集合的幂集
第6章总结和展望
6-1转换系统的功能和特点
6-2总结
6-3展望
参考文献
江西师范大学;