プログラミング言語の設計と意味論を、Scheme言語で記述されたインタプリタ定義を通して学ぶ。講義で解説した内容を演習時のインタプリタ作成によって確認する。
プログラミング言語に関係する種々の概念、構文、言語機能についての正確な理解を目指すとともに、インタプリタ定義を通した言語設計手法を習得する。
- Inductive Sets of Data
- Data Abstraction
- Expressions (let, procudre, letrec, scope and binging, lexical addressing)
- State
- Continuation-Passing Interpreters (trampolined interpreters, threads)
D. Friedman & M. Wand, “Essentials of Programming Languages”, 3rd edition, MIT Press 2008
最低限のプログラミングが行えること。計算機科学第一を履修していることが望ましい。
演習レポートと講義中の小テストおよび期末試験による。
cs2-2014@prg.is.titech.ac. (この後ろに「日本」のドメイン名を追加して下さい)