Compiler
コンパイラとは、字句解析、構文解析、意味解析、最適化、コード生成を経て、ソースコードをターゲットコード(機械語やバイトコード)へ変換するプログラムである。
目的
高水準言語が実行可能なコードへどう変換され、最適化がどう働くかを理解する。
メカニズム
フロントエンドは、字句解析でトークン列へ変換し、構文解析で AST を構築し、意味解析で型検査を行う。ミドルエンドは中間表現 (IR) の最適化(インライン化、定数畳み込み、ループ展開)を担う。バックエンドはレジスタ割り付け、命令選択、コード生成を行う。
ユースケース
- プログラミング言語の実装
- コード最適化
- コンパイル理論