最終変更時間:2016年 01月21日 20時33分05秒 JST
プログラミング言語とは何か.どのような構造を持つものなのか. コンピュータが発明されて以来約70年間プログラミング言語はこの地球上に 存在しているが,1960年代と現在とを比べれば,その重要性は雲泥の差である. これまでの70年間に我々人類が獲得したプログラミング言語における 知恵の一部をある程度系統的に解説する.プログラミング言語の 本質とは何かについて解説するために,極限まで単純なプログラミング 言語であるSchemeを理解し,それを用いてプログラミング言語のしくみ について学ぶ.
講義名: | プログラミング言語論 |
---|---|
担当者: | 山本修身 (osami@meijo-u.ac.jp) |
授業日: | 金曜日3時限 |
教室: | 共通講義棟北 N-206 |
関連する科目: | プログラミング演習1, 2, 3, 4 |
仮定する知識: | プログラミングの基礎,プログラミングの経験 |
ホームページ: | http://osami.s280.xrea.com/ProgLang2015/ |
成績の評価: | 毎回出題するレポート(10%) + 中間テスト(30%) + 期末試験(60%) |
授業日 | タイトル | 印刷用資料 | |
---|---|---|---|
第1回 | 9/18 | 変数と関数の定義と評価のモデル | 第1回印刷用 |
第2回 | 9/25 | 変数と関数の定義と評価のモデル | 第2回印刷用 |
第3回 | 10/2 | 手続きとそれが生成するプロセス | 第3回印刷用 |
第4回 | 10/9 | 手続きとそれが生成するプロセス | 第4回印刷用 |
第5回 | 10/16 | データによる抽象化(1) | 第5回印刷用 |
第6回 | 10/23 | 例題による解説(1) | 第6回印刷用 |
第7回 | 11/6 | データによる抽象化(2) | 第7回印刷用 |
第8回 | 11/13 | 中間テストと解説 | |
第9回 | 11/20 | 高階手続きによる抽象化 | 第9回印刷用 |
第10回 | 11/27 | 局所状態変数と環境モデルー クロージャによる抽象ー | 第10回印刷用 |
第11回 | 12/4 | 遅延評価とストリーム | 第11回印刷用 |
第12回 | 12/11 | 例題による解説(2) | 第12回印刷用 |
第13回 | 12/18 | マクロ | 第13回印刷用 |
第14回 | 12/25 | 論理型プログラミング(1) | 第14回印刷用 |
第15回 | 1/8 | 論理型プログラミング(2)とまとめ | 第15回印刷用 |
このプログラムは多くのScheme処理系で実行可能であると考えられる. kawaおよびbiwaschemeでは動作確認済みである.ただし,biwascheme上で 実行する場合には,関数replの定義中の#!eofを#fに書き換える.これにより, インタプリタを停止させるには,#fを直接入力する.
Schemeその他を含めて参考になるインターネット上の情報です.