程序设计语言基础高级专题

本课程是15-312编程语言基础的后续课程,旨在更全面地发展其中提出的思想。目标是让学生掌握阅读当代文学所需的编程语言语义的基本工具。主题包括:

  • 高级类型系统,包括调用-推送值、代数效应和依赖类型。
  • 程序行为的等式理论。
  • 定义语义相等的操作语义上的逻辑关系。
  • 验证方程式理论的正确性。
  • 应用于成本分析和程序模块系统的编程语言中的阶段差异。

这就是“LaTeX:\α课程发布”,具体的主题有待确定。建议学生在授课过程中注意“动荡”!该课程目前不满足任何学位要求。

以下资源供学生参考:

参与全部的学生包括以下要求:

  • 与另一名学生合作准备一周的课程笔记,在授课后一周内提供。请使用PFPL语法宏用于排版。
  • 每周作业,包括书面练习和使用阿格达证明人。家庭作业于每周四下午6点发布,每周周三下午6点截止。
  • 与另一名本科生一起准备期末项目,使用本课开发的方法对PL中的一些主题进行全面的描述。
  • 对班上至少两名其他学生的项目报告进行评论,该报告将发布在画布页面上以便于参考。

参与毕业学生包括上述要求,以及

  • 解决家庭作业中的任何高级问题。
  • 与另一名本科生一起准备期末专题,使用本课程中开发的方法,对PL中的某些主题进行透彻阐述。这一发展将达到比本科生更先进、更彻底的水平。
  • 对班上至少两名其他学生的项目报告进行评论,该报告将发布在画布页面上以便于参考。

这个班的助教是哈里森·格罗丁,负责设置和评分作业。他还将帮助那些不熟悉该工具的学生开始使用Agda。

本科生将被分配一个字母等级a,表示他们完全参与了本课程,所有作业都取得了满意的成绩。研究生将被指定为通过,表示他们如上所述的完全参与。未完成任何要求的学生将不会被分配及格分数。