跳到主要内容

CMU 15-312 编程语言基础 ⭐️

课程名称: Foundations of Programming Languages
课程官网地址:2021年秋2014年春授课老师网站
先修课程: 15-150 函数式编程原理15-251 理论计算机科学的伟大思想
重要程度: ※※※※
课程评点: 本课没有公开的视频,不过看书即可,可以和CS152 编程语言的课程一起学习

课程说明

美国的名校是比较重视函数式编程以及程序设计语言理论(Programming language theory,PLT),关于函数式编程以及PLT相关的课程,基本都是必修(以及是不少核心课程的先修课),国内则极少有学校开设这方面的课程,而且极少有相关岗位。如果你有足够的学习时间(或读研),建议按照这些名校的学习路径认真学习,但如果你时间紧迫,有就业压力,这些课程可以不学。

这些课程大多都没有开放的视频,大家可以阅读一下推荐的教材以及文档,也可以去知乎了解一下相关的信息。这些名校推荐的教材都为大家整理好并提供了百度下载链接,感兴趣的同学可以把这些课程都了解一下。

美国的名校是比较重视函数式编程以及程序设计语言理论(Programming language theory,PLT)的,这门课主要介绍编程语言设计、语义和实现的基本原则,从数学的角度研究编程语言的基本结构。

完成本课程后,您将获得以下知识和技能:

  • 在单一数学框架中理解广泛的编程语言概念,包括最流行的编程语言中的概念。
  • 了解抽象语法的概念以及程序中标识符的绑定和范围。能够通过结构归纳法证明语言的属性,尊重绑定标识符的重命名。
  • 能够对编程语言的静态(类型系统)和动态(执行行为)给出数学上精确的定义。
  • 掌握编程语言的安全概念,能够证明一种语言是安全的,或者推导出其安全性的反例。
  • 能够为多种编程语言实现直接从其定义的语法、静态和语义派生的解释器。
  • 了解如何将多种功能集成到一种语言中并确保组合是合理的。

推荐教材

基础入门教材

🌽 Robert Harper的《Programming Languages: Theory and Practice》

电子书:编程语言:理论与实践 英文版 提取码: huip

中级进阶教材

🌽 Benjamin C. Pierce的《Software Foundations》

电子书:类型和编程语言 英文版 提取码: lv6p