6c6c6c6c プログラミング言語処理系論 (2022年度)

プログラミング言語処理系論 (2022年度)

(東京大学 大学院工学系研究科 講義)

by 佐藤周行

この授業の目的

アルゴリズムを表現するためのプログラミング言語でかかれたプログラムを 具体的なアーキテクチャに向けて最適なコードに変換することは、 従来からコンピュータサイエンスの中心的な話題であったが、 プログラミング言語の抽象度とアーキテクチャの複雑度の両方が 飛躍的に増している現在、その重要度と問題の複雑度は飛躍的に増加している。

本講義では、プログラミング言語をどう設計するか、 そこで表現する概念をどう実装するか、 その時に処理効率をあげるにはどうしたらよいかを理解することを目標とする。

ごく簡単な(スクリプト)プログラミング言語の設計、実装、実行用VMの構築をスクラッチから行い、それを通しての説明を行うことをふくむ。

今年度の教材と具体的な目標は次のとおりとする。

  1. Pythonのソースツリーを目の前にして迷子にならず、ソースコードの重要な部分を読む「あたり」をつけられるようにする
  2. PyPyやRPythonをみて、VMの作りかたについての理解を深める
  3. TypeScript等で使われている現代的な型システムとその生産性への貢献についての理解を深める

今回、大規模なプログラミング言語の実際とその標準化に関して、特別講義(1回)を予定する。

4/20 岩下英俊氏(JIS Fortran委員会委員長)

授業予定

  1. 授業導入とプログラミング言語概説(2回)4/6, 4/13
  2. 特別講義(岩下英俊 JIS Fotran委員会委員長)(1回) 4/20
  3. プログラミング言語の定義の手法(3.5回) 4/27, 5/11, 5/18, 5/27
  4. VMと実行環境(2.5回)5/27, 6/8, 6/15
  5. プログラム解析とプログラム最適化(3回) 6/22, 6/29, 7/6
  6. (進んだ話題(1回) 7/13)

場所、日時

Zoom を使ったオンライン講義になります。 Zoomの情報は ITC-LMS に載っています。

毎週水曜日(2020/4/6 -- ) 10:25--

評価

提出したレポートによって評価します。

問題はここです。 問題

全体講評

全体講評をここにおいておきます。