コンパイラ実習

授業目的
C++プログラミング,言語処理系における抽象構文木の表現と操作の手法,lex/yaccによる言語処理等を習得することを目的とする.
到達目標
・C++基礎的なプログラミングを習得し,継承やポリモーフィズムを用いたプログラミングができる.
・言語の抽象構文木のような木構造のデータ構造を構築できる.
・lex/yaccを用いて字句解析と構文解析を行う処理系を構築できる.
・2,000行程度のプログラムを書き,そのデバッグができる.
授業計画
第1回C++(1)CからC++へ
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第2回C++(2)標準ライブラリSTL
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第3回C++(3)コンストラクタ,デストラクタ,代入
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第4回C++(4)継承とポリモーフィズム
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第5回抽象構文木の実装
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第6回抽象構文木の実装
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第7回インタープリタの実装
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第8回インタープリタの実装
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第9回lexの使用法
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第10回yaccによる抽象構文木の構築
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第11回yaccによる抽象構文木の構築
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第12回yaccによる抽象構文木の構築
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第13回yaccによる抽象構文木の構築
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
第14回yaccによる抽象構文木の構築
【授業外学修】課題のプログラムを完成させて提出すること(3時間)
【授業外学修】プログラミング実習IIIを履修していることが必須である. コード量が 2,000行程度になるので, プログラミングに自信のない者には履修を勧めない.
**こちらの内容は2024年4月1日を基準としたものです.最新のシラバス情報,詳細は大学提供のシラバス情報照会ページシラバス情報照会ページで確認してください**