コンパイラ実習

授業目的
C++プログラミング,言語処理系における抽象構文木の表現と操作の手法,lex/yaccによる言語処理等を習得することを目的とする.
到達目標
・C++基礎的なプログラミングを習得し,継承やポリモーフィズムを用いたプログラミングができる.
・言語の抽象構文木のような木構造のデータ構造を構築できる.
・lex/yaccを用いて字句解析と構文解析を行う処理系を構築できる.
・2,000行程度のプログラムを書き,そのデバッグができる.
授業計画
第1回C++(1)CからC++へ
第2回C++(2)標準ライブラリSTL
第3回C++(3)コンストラクタ,デストラクタ,代入
第4回C++(4)継承とポリモーフィズム
第5回抽象構文木の実装
第6回抽象構文木の実装
第7回インタープリタの実装
第8回インタープリタの実装
第9回lexの使用法
第10回yaccによる抽象構文木の構築
第11回yaccによる抽象構文木の構築
第12回yaccによる抽象構文木の構築
第13回yaccによる抽象構文木の構築
第14回yaccによる抽象構文木の構築