2024年度 プログラミング言語理論   Programming Language Theory

文字サイズ 

アップデートお知らせメールへ登録 お気に入り講義リストに追加
開講元
数理・計算科学コース
担当教員名
叢 悠悠 
授業形態
講義    (対面型)
メディア利用科目
曜日・時限(講義室)
月5-6(W9-202(W922))  木5-6(W9-202(W922))  
クラス
-
科目コード
MCS.M428
単位数
2
開講年度
2024年度
開講クォーター
2Q
シラバス更新日
2024年3月14日
講義資料更新日
-
使用言語
英語
アクセスランキング
media

講義の概要とねらい

プログラミング言語は人間が計算機とコミュニケーションを行うためのツールである。自然言語と同様に、プログラミング言語の背後には理論があり、その理論を使うと複雑なプログラムに対して厳密な議論を行うことができる。本講義はプログラミング言語理論の基本的な知識の習得を目標とする。特に、継続とよばれる、例外やコルーチンなど多くの実用的な機能を表現可能な概念の意味論に着目する。

到達目標

本講義は以下の技能を身に付けることを目標とする。

- プラグラミング言語のさまざまな機能を継続の操作として表現する技能
- プログラムの意味を数学的な視点で説明する技能

キーワード

関数型プログラミング, 継続, 制御演算子, 代数的エフェクトとハンドラ, ラムダ計算, 操作的意味論, 型システム

学生が身につける力(ディグリー・ポリシー)

専門力 教養力 コミュニケーション力 展開力(探究力又は設定力) 展開力(実践力又は解決力)

授業の進め方

各講義で演習を交えながら新しい概念や言語機構などを導入する。

授業計画・課題

  授業計画 課題
第1回 導入 授業時に指示する。
第2回 関数型プログラミングの基礎 授業時に指示する。
第3回 継続 授業時に指示する。
第4回 制御演算子(1) 授業時に指示する。
第5回 制御演算子(2) 授業時に指示する。
第6回 代数的エフェクトとハンドラ 授業時に指示する。
第7回 エフェクトの合成 授業時に指示する。
第8回 継続の言語学的応用 授業時に指示する。
第9回 型なしラムダ計算 授業時に指示する。
第10回 単純型付きラムダ計算 授業時に指示する。
第11回 制御演算子の意味論(1) 授業時に指示する。
第12回 制御演算子の意味論(2) 授業時に指示する。
第13回 代数的エフェクトとハンドラの意味論 授業時に指示する。
第14回 まとめ 授業時に指示する。

授業時間外学修(予習・復習等)

学修効果を上げるため,教科書や配布資料等の該当箇所を参照し,「毎授業」授業内容に関する 予習と復習(課題含む)をそれぞれ概ね100分を目安に行うこと。

教科書

特になし

参考書、講義資料等

特になし

成績評価の基準及び方法

授業への参加度 (20%) と課題の出来 (80%) に基づいて評価を行う。

関連する科目

  • MCS.T204 : 計算機科学概論
  • MCS.T224 : プログラミング第一

履修の条件(知識・技能・履修済科目等)

関数型プログラミングの経験を持つことが望ましいが、必須ではない。

このページのトップへ