大学院
HOME 大学院 プログラミング言語処理系
過去(2025年度)の授業の情報です
学内のオンライン授業の情報漏洩防止のため,URLやアカウント、教室の記載は削除しております。
最終更新日:2026年10月1日

授業計画や教室は変更となる可能性があるため、必ずUTASで最新の情報を確認して下さい。
UTASにアクセスできない方は、担当教員または部局教務へお問い合わせ下さい。

プログラミング言語処理系

プログラミング言語処理系 Programming Language Systems
We will learn construction of programming languages and their systems.
Traditional programming languages, such as C and C++, are called statically typed languages, while modern popular languages, such as Python and JavaScript, are called dynamically typed languages. These two categories require different approaches to construct systems processing them. In this lecture, we learn how to implements features of programming languages while contrasting statically typed and dynamically typed languages.

プログラミング言語処理系の構成方法を講義する.
伝統的な静的プログラミング言語であるCやC++言語と,近年広く使われるようになったPythonやJavaScriptのような動的プログラミング言語では,言語処理系を構成するアプローチが異なる.この講義では,静的プログラミング言語と動的プログラミング言語を対比しながら,プログラミング言語の機能の構成法を説明する.
MIMA Search
時間割/共通科目コード
コース名
教員
学期
時限
4860-1082
GIF-CI5307L1
プログラミング言語処理系
鵜川 始陽
A1 A2
火曜2限
マイリストに追加
マイリストから削除
講義使用言語
英語
単位
2
実務経験のある教員による授業科目
NO
他学部履修
可
開講所属
情報理工学系研究科
授業計画
1. Overview 2. Compilers and Interpreters 3. Object-oriented languages 4. Optimization for interpreters and JIT compilation 5. Memory management and garbage collection 6. Parallel and concurrent processing 1. プログラミング言語処理系の概要 2. コンパイラとインタプリタ 3. オブジェクト指向 4. インタプリタの高速化技法とJITコンパイラ 5. メモリ管理とガーベージコレクション 6. 並列処理
授業の方法
授業計画の内容を講義する.
成績評価方法
授業中のアクティビティと2回のレポートにより評価を行う. We evaluate based on activities in classes and two reports.
教科書
なし
参考書
"Crafting Interpreters" Robert Nystrom, http://craftinginterpreters.com/***** "Virtual Machines" James E. Smith, Ravi Nair
履修上の注意
Programming experience in Java, C or C++, and dynamically typed language such as JavaScript, Ruby, and Python will help understanding this lecture, but not mandatory. 事前知識として,JavaとCかC++と動的プログラミング言語によるプログラミングの経験があることが望ましい.
その他
The second lecture (October 14) will be canceled. 2回目の講義日(10月14日)は休講です.