http://www.cs.washington.edu/education/courses/csep505/06sp/
本课程以Caml/Ocaml为蓝本介绍现代程序语言中的诸多特性,虽然这不是编译原理的课程,但是肯定也很合对此感兴趣的人的胃口。网站包括所有讲义pdf, 代码,作业和答案,授课视频和mp3。
课程大纲:
1. Purpose of studying programming languages
2. Functional programming (in Caml)
* Datatypes
* Higher-order functions
* Tail recursion
* Lack of mutation
3. Defining languages
* Concrete vs. abstract syntax
* Introduction/elimination forms
* Semantics via interpretation
* Semantics via translation
4. Induction for Proving Program Properties
5. Program and Programming-Language Equivalence
6. Lambda-Calculus
7. Abstract Machines
8. Exceptions, continuations, continuation-passing style
9. Types
* Soundness vs. completeness
* Type safety
* Type inference
* Static vs. dynamic typing
10. Polymorphism
* Generics
* Parametricity
* Subtyping
* Polymorphic references
11. Laziness (thunks, streams, memoization)
12. Macros
13. Concurrency
* Threads
* Locks
* Message passing (Concurrent ML)
* Atomicity
14. Object-oriented programming
* Dynamic dispatch
* Classes vs. types
* Multimethods
* Classless OOP
* Extensibility: contrast with functional programming
15. Memory management
* Garbage collection
* Regions (a.k.a. arenas)
* Unique pointers
分享到:
相关推荐
Programming and Programming Languages (Brown Univ)
Univ. Comenian. (N.S.)**:这是《Acta Mathematica Universitatis Comenianae》的新系列(New Series)的缩写。该期刊由Comenius University Press在斯洛伐克的布拉迪斯拉发出版,其国际标准连续出版物号(ISSN)...
Control of linear systems with regulation and ...Eindhoven Univ. of Technology P.O. Box 513, 5600 MB Eindhoven The Netherlands Fax: +31-40-2442489 E-mail: a.a.stoorvogel@tue.nl Peddapullaiah Sannuti
### 基于 "robust optimization_sliders_princeton_univ.pdf" 的知识点提炼 #### 标题:Robust Optimization_Slides_Princeton Univ. #### 描述:Robust Optimization_Slides_Princeton Univ. #### 标签:Robust ...
Los Angles: Univ. of Southern California, 1977, 461 pp., [dollar]10.00 (paper) 810 Psychology in the Schools, October, 1978, Vol. 16, No. 4. TAJRIN, G. I., MAGARY, J. F., & POULSEN, M. K. (EDs.)....
Los Angeles: Univ. of Southern California, 1975, 348 pp., [dollar]7.50 (paper) 810 Psychology in the Schools, October, 1978, Vol. 16, No. 4. TAJRIN, G. I., MAGARY, J. F., & POULSEN, M. K. (EDs.)....
Los Angeles: Univ. of Southern California, 1975, 407 pp., [dollar]8.50 (paper) 810 Psychology in the Schools, October, 1978, Vol. 16, No. 4. TAJRIN, G. I., MAGARY, J. F., & POULSEN, M. K. (EDs.)....
Image encoder/decoder-Useing Matlab-Peking Univ.
《矢量控制与交流驱动器动态》是一本深入探讨交流驱动技术的专业书籍,其PPT版本为学习者提供了丰富的教学资源。这本书的核心内容涵盖了交流驱动系统的重要理论和技术,包括矢量控制、磁场定向、交流电机的复杂矢量...
% Andy Ganse, Applied Physics Laboratory, Univ of WA, 2006. % aganse@apl.washington.edu, http://staff.washington.edu/aganse % % A demo of basic nonlinear tracking examples 6.1-2 & 6.1-3 from the % ...
//www.phys.univ.kiev.ua/ http://www.razom.org.ua/ http://dorobok.edu.vn.ua/ 为了通过 EMAIL 发送工作,您需要在server/config.js指定 GMail 邮箱的用户名和密码简单介绍一下它是如何工作的:每个 URI 都是一个...
《无线通信基础》是通信领域的权威著作,作者David Tse是一位在无线通信领域有着深厚造诣的专家。这本书深入浅出地介绍了无线通信的基本概念、原理和技术,对于想要理解和掌握无线通信的人来说,是一本不可多得的...
描述中提到 "This is a p2p source code from tsinghua univ." 明确了这是一份来源于清华大学的P2P源代码,表明它可能用于教育或研究目的,展示了在实际场景中如何构建和实施P2P网络。 标签 "p2p source code c++" ...
Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。
5. `err_pat_dcd_rom_univ.v`:可能是一个错误模式ROM(只读存储器),存储预定义的错误模式以进行解码测试。 6. `bch_dec_enc_univ_top.v`:可能是包含了编码和解码功能的综合模块,用于验证整个BCH编码解码流程。 ...
Random process for Engineers is written by Bruce Hajek at UIUC, which is useful for the learning of stochastic process.
txt 中提取大学或机构名称列表, 将结果写入文件univ.txt , 每行一个大学或机构名称, 按照大学或机构在data.txt 出现的先后顺序输出, 样例如下. 北京理工大学 北京师范大学 提示: 所有大学名称在data .txt ...
它是一个基于 node-js 的服务器,它向请求自动完成 android sdk 的客户端提供 android 公共方法列表。 客户端应该通过 nodejs 服务器的“getList”事件为特定的 android 类请求自动完成。 此时,客户端负责将类引用...
reinforcement leanring Standford Univ. lecture 4 reinforcement leanring Standford Univ. lecture 4reinforcement leanring Standford Univ. lecture 4reinforcement leanring Standford Univ. lecture 4