程序设计技术和方法
(2011)

(Structure and Interpretation of Computer Programs)

课程通知(更新: 2011-10-21 课堂幻灯片(更新: 2011-12-22
课程作业页(更新: 2011-11-25
课程讨论组(在北大教学网) 原有讨论供参考
通知:考试:1月4日晚18:30-20:30,3教101教室。
   答疑:1月2日19-22点,3日8-12点,14-18点,理科1号楼1479教室

请注意:本课程第二次大作业题和要求已在作业页公布,请自行查看,有疑问或问题请给老师发邮件或答疑时询问。(11.30通知)
补充:第二次大作业请尽可能元旦前交。最晚不超过1月8日晚24点。(12.25通知)

与前几年课程的情况相比,本次课程内容将有些变化。课程中适当讨论教科书的一些重要内容与常规(基于C/C++的)程序设计的关系,以及对常规程序设计的可能启示。

课程简介   课程进度计划
教科书《计算机程序的构造和解释》中文版图书信息勘误表

Structure and Interpretation of Computer Program 英文原书链接,本书的英文全文压缩文件(来自 MIT OpenCourseware,请在原作者和出版社的许可范围内使用)。

MIT 开放课程 Structure and Interpretation of Computer Program 幻灯片(本地下载)

MIT 开放课程 SICP 视频本地观看(校内使用)。(服务器正在维修升级,暂时不能用

教学参考书

Scheme 系统
建议上课同学使用 MIT Schme 系统完成课程练习,尤其是后面部分的作业与 MIT 系统有些关系。采用其他系统,书上的代码需要做一些修改,比较麻烦。

使用这个系统请先看看 MIT Scheme 系统的简单使用入门
安装系统后有详细的帮助文件,请在本机参考,或从这个链接找到
更多信息可以到 MIT/GNU Scheme 系统网址 查看。
MIT Schme 系统本地下载:MIT-Scheme 9.0.1(19M)参考手册用户手册SOS手册IMAIL手册
这里有一个09年的版本MIT-Scheme(17M)(使用入门老文件)。

另外一个使用比较广泛的系统是 PLT Scheme。其用户界面做得比较好,使用比较方便。 但有些兼容性问题,用于做本课程后面的练习时会遇到比较多麻烦。相关资源如下:
PLT Scheme 系统使用入门PLT-Scheme 网站 有大量相关信息和资源。
PLT Scheme 系统本地下载:PLT-Scheme(21M)

这里有许多与 Scheme 语言和系统有关的信息(国外页面)

Scheme 语言手册:
第5修订报告(Revised Report 5)
第5修订报告中文翻译版(王咏刚翻译). 本地下载

第6修订报告(Revised Report 6)
第6修订报告-标准库(Standard Libraries)
第6修订报告-阐释(Rationale)
第6修订报告-非规范附录(Non-Normative Appendices)。This document contains non-normative appendices to the Revised 6 Report on the Algorithmic Language Scheme. These appendices contain advice for users and suggestions for implementors on issues not fit for standardization, in particular on platform-specific issues.

教学小组
任课教师: 裘宗燕 (办公室:理科楼1480)
2011辅导教师: 罗国杰 分工负责:信息学院09级同学
张可 分工负责:其他同学
2010辅导教师: 雷锦江 分工负责:数学学院 08 级同学
罗睿辞 分工负责:信息学院 08 级学号 234 之前同学
姚金宇 分工负责:其他,包括数院06/07级,元培,和信息学院其他同学
2009辅导教师: 秦 腾 分工负责:数学学院和元培学院同学,以及信息学院学号100以内的同学
姚金宇 分工负责:信息学院学号100以上的同学
2008辅导教师: 孙 俊:数学学院05级,元培学院,信息学院学号00648001-098
王盛颐:数学学院06和07级
杜仲轩:信息学院学号00648099以上
本页及相关页面(除另声明者外)由裘宗燕创建维护,可自由用于各种学习活动。 其他使用需得到作者(相关作者)许可。

访问数(2008.6开始):35282 最后更新: 2011-12-26