编程语言基础:核心概念与实践探索
1. 内容介绍与适用人群
这是一份关于程序和编程语言数学研究基本概念的电子资料,涵盖了 Coq 证明助手的高级应用、操作语义、Hoare 逻辑和静态类型系统等主题。它面向广泛的读者群体,包括高级本科生、博士生和研究人员,无需特定的逻辑或编程语言背景,但一定的数学素养会有所帮助。
资料以 Coq 完全形式化和机器检查,建议在 Coq 交互式会话中阅读,大部分练习也设计为使用 Coq 完成。其文件组织包括一系列核心章节和一些拓展章节,核心章节适合本科生和研究生。它基于之前的相关资料,可与之结合用于一学期的编程语言理论课程,对于熟悉前期内容的学生,仅这份资料也能满足大部分学期的学习需求。
2. 主要概念线索
资料主要发展了两条概念线索:
- 特定程序属性推理 :运用形式化技术来证明特定程序的属性,例如排序函数或编译器是否遵循某种形式规范。
- 类型系统的运用 :借助类型系统为给定编程语言中的所有程序提供良好行为保证,比如确保类型良好的 Java 程序在运行时不会出现问题。
这两条线索各自内容丰富,将它们结合起来虽有很多内容无法详尽阐述,但希望能相互启发,为深入研究奠定基础。后续阅读建议可在相关章节找到,所有引用作品的文献信息可在特定文件中查询。
3. 程序验证相关内容
3.1 基础工具与语义风格
在构建可靠软件和硬件时,有两个关键主题:证明特定程序的特定属性和证明整个编程语言的一般属性。为此,需要将程序表示为数学对象,并用数学函数或关系描述其行为。
超级会员免费看
订阅专栏 解锁全文

81

被折叠的 条评论
为什么被折叠?



