LL(1) Light-weight Language - LL(1)文法で記述した簡単な言語コンパイラ
学生の内になにかやっておきましょう企画(1) 一応α版。
* 実装は(ANSI)C
* 名前の通り, 構文解析には扱いやすいLL(1)文法の, 再帰下降型パーサを作成する
* まず出来上がりのものができるまで(過度な)最適化はしない
* 仮想機械を用意し, 仮想機械言語(コード)を生成し, コンパイル後即時実行する
* サポートする型
- 整数型, (倍精度)実数型, 論理型, 文字列型, 配列型, 関数型, ストリーム型(ファイルポインタ)
* なるべく動的型付けに
* サポートする構文
- if(else if), for, while
* サポートする式
- +, -, *, %, ++, --, &&, ||, ',', !, ==, !=, >, >=, <, <=,