プログラム言語論

  [ GB20101 ]
Programming Languages and Methodology
対象:3・4学年 開設学期:春AB 曜日・時限:木3・4 単位数:2単位
担当教員:亀山幸義

概要

プログラム言語の基本概念を系統的に学習する。内容は、構文と意味、インタプリタとコンパイラ、抽象機械と仮想機械、関数と型システム、モジュラリティとオブジェクトなどである。取り上げるプログラム言語は、手続き型、関数型、論理型、オブジェクト指向型などである。

学習・教育目標

多くのプログラム言語に共通して現れる基本的かつ重要な概念を学び、これらの概念がプログラム言語でどのように具体化されているかを理解する。

キーワード

構文と意味、インタプリタ、コンパイラ、抽象機械,関数、型システム、モジュラリティ、抽象化、オブジェクト指向、ソフトウェアの信頼性。

Keywords

Syntax and Semantics, Interpreter, Compiler, Abstract Machine, Function, Type System, Modularity, Abstraction, Object-Orientation, Software Reliability.

時間割

講義内容/理解すべき項目
第1週導入: 構文と意味、インタープリタとコンパイラ、抽象機械,高級言語と低級言語、手続き型言語と宣言型言語。
第2〜5週基礎: 抽象機械,意味論,関数と手続き、ブロック構造と変数スコープ、データ構造と型システム、制御構造と評価順序、メモリ管理とゴミ集め、演習。
第6〜8週モジュラリティと抽象化: 構造化プログラミング、データ抽象化、モジュール、抽象データ型、オブジェクト指向、クラスと継承、演習。
第9〜10週様々なプログラミング言語、発展的な話題、授業のまとめ。

教材

講義資料は、この授業のホームページまたはmanabaシステムを通じて配布する。

参考書籍

この授業の一部は以下の書籍に準拠している。

また、以下の本も参考にしている。

予備知識・前提条件

何らかのプログラミング言語(C, Java, Scheme, ML など)を用いたプログラミングの経験があることが望ましい。

成績評価

授業への出席を前提として、演習30%、試験70%により成績評価を行う。

教員メールアドレス

亀山: kam [at] cs tsukuba ac jp

TF・TA

未定

講義のWebページ

http://logic.cs.tsukuba.ac.jp/~kam/plm/

オフィスアワー

初回の講義で指定する。