担当 | 菊地時夫 |
連絡方法: | tkikuchi@is.kochi-u.ac.jp |
単位: | 2 |
情報科学科 | 3回生以上 選択 |
アドバイス時間: | 水曜日 8:50 〜 10:20 |
場所: | 408号室 |
キーワード | 文脈自由文法、言語処理系、語句解析、構文解析、意味解析、コード生成 |
授業目標
プログラム言語は、計算機を利用する上で、各種のアルゴリズムを具体化する 手段として重要な位置を占めています。この授業では、さまざまなプログラム 言語の文法を記述する方法を学ぶとともに、その記述から自動的に言語処理系 を作り出す方法について UNIX で使われている yacc (Yet-Another Compiler-Compiler) などを例に上げて勉強します。また、言語に備わっている機能がどのようにして 実現されているかについても学びます。
授業レベル
例題として取り上げるプログラムは、主にC言語で記述します。 また、yacc の中でもC言語の関数の利用などが行われますので、 C言語を十分学んでおくことが必要です。
教材
参考書:
岩波講座ソフトウェア科学 4 プログラミング言語 (武市正人)
岩波講座ソフトウェア科学 5 プログラミング言語処理系 (佐々政孝)
コンパイラ (培風館:エイホ・ウルマン)など。
評価方法
毎回の授業で重要事項確認のための小テストを行います。これを 出席点とし、期末試験の成績を合わせて評価します。
授業内容の概略
授業方法
主に板書によって講義しますが、必要に応じてプリントを配布します。
受講生へのコメント
単にプログラムが書ければよいというのではなく、そのプログラムによって 計算機の中で何が起こるのかについて知ることが重要 です。