学科(専攻)・科目の種別等
Department/Division

専門科目 数学・情報数理学科
・・・・・・・・・・・・・・・
授業コード
Class Code
S11313201 科目コード
Course Code
S113132
授業の方法
Course Type
講義 単位数
Credits
2
期別
Semester Offered
前期 曜日・時限
Day & Period
木2
授業科目
Course Title

プログラミング言語論I

Theory of Programming Languages I
担当教員
Instructor
山本 光晴
履修年次/セメスター
Students' Year/Semester to take the Course
3
受講対象
Students for whom Course is Intended
自学部他学科(自研究科他専攻)  
Students of Other Departments
他学部(他研究科)
Students of Other Schools
科目等履修生
Non-degree Students
理学部 数学・情報数理学科 3-4年次
教室等
Classroom
121講義室
概要
Brief Description
Lispの1種であるSchemeについて、その文法やSchemeを使ったプログラミングについて講義する。
目的・目標
Objectives and Goals
プログラミングの技法については、Lispにとらわれないでプログラミングの一般に関連することを取り扱う。また、Schemeにおいて閉包(closure)という概念の理解は重要であるが、閉包は高階のデータという形でいろいろな所に現れる考え方であるからである。演習・実習はソフトウェア演習と連携して行ない、実際の問題にあたって体得する。
授業計画・授業内容
Course Plans and Contents
第1回〜第6回 手続きによる抽象の構築
- プログラムの要素
- 手続きとその生成するプロセス
- 高階手続きによる抽象
第7回〜第10回 データによる抽象の構築
- データ抽象入門
- 階層データ構造と閉包性
- 記号データ
第11回〜第15回 標準部品化力、オブジェクトおよび状態
- 代入と局所状態
- 評価の環境モデル
- 可変データでのモデル化
教科書・参考書
Textbooks/Reference Books
テキスト: サスマン他共著, 和田英一訳「計算機プログラムの構造と解釈 第二版」, http://sicp.iijlab.net/
参考書:
(1) 湯浅太一著「Scheme入門」、岩波書店
(2) Revised^5 Report on the Algoritmic Language Scheme,
http://www.swiss.ai.mit.edu/projects/scheme/
評価方法・基準
Evaluation Procedures and Criteria
試験またはレポートによって成績の評価を行なう。