「RubyでつくるRuby ゼロから学びなおすプログラミング言語入門」 に感銘を受けた、Node.jsでミニNode.js作りチャンレンジを終えて、今度はミニコンパイラ作りにチャンレンジします。
- 01 : 仕様の検討と、LLVMの準備 ... コンパイラの仕様検討と、LLVMの導入
- 02 : LLVM IRの下調べ ... LLVM IRについて調べて見ました
- 03 : 足し算(+演算子)を実現する ... 整数リテラルと足し算
- 04 : 四則演算と余りをサポートする ... 四則演算と余り(-, *, /, %)
- 05 : ローカル変数を使う ... ローカル変数、複数行、デバッグ用簡易出力
- 06 : 比較を行う ... 比較演算子をサポート
- 07 : 条件分岐を行う ... if 〜 else への対応
- 08 : Whileループを実装する ... while ループをサポートする
- 09 : 文字列出力とFizzBuzz ... ループを使ってFizzBuzzを実現
- 10 : ユーザー定義関数 ... ユーザー定義関数をサポートする
- 11 : FizzBuzzとフィボナッチ数列 ... ユーザー定義関数を使ってFizzBuzzとフィボナッチ数列を実現(再帰呼び出し)
- This sample is under the MIT license
- このレポジトリはMITランセンスで提供されます