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.
它是一个基于 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
matlab精度检验代码视频异常检测 来源 - 该项目工作的主要方面是开发一种适当的分类方法和一种有效的算法,以检测跌倒活动。 异常检测是一种用于识别不符合预期行为的异常模式的技术,称为异常值。...