Clover2開発日誌

Clover2というJavaのように静的な型を持つRubyのようなコンパイラ+仮想マシンの開発日誌です。LLVMでJITもします。https://github.com/ab25cqにて開発しています。

JITの高速化の続き

とりあえず、演算子は全てサポートしたはずです。

ただテストがまだです。

前書いたものから基本的にはコピーアンドペーストしただけでしたので、量だけ多くて疲れました。

ポインタ関係の演算と浮動小数点の演算辺りにバグがありそうです。ポインタを使った演算のテストはmake testすれば、デバッグできるので、そのときにデバッグとテストをしたいと思います。

LLVMでポインタと普通の数値の加算ってOKなんだろうか。OKでないとセグフォするはずです。

ちょっと今からテストだけしておきますかね。気になります。

後は膨大にあるキャスト群の高速化だけでほぼ終わりです。

私事ですが、来月の半ばから一月休みがあるので、そのときに終わらせたいと思います。リリースは8月15日あたりですかね。遅くても。version 2.0としたいと思います。version 2.0がリリースされれば高速化されていてもされてなくても、もう「のらプログラマー」を引退すると思います。

ただ引退後も細々とClover2の改良とデバッグ、ソースの整理などは行っていきたいと思います。機能追加は拡張ライブラリを書けるようにするだけですね。ソケットクラスは作るかどうか迷ってます。それだけしておくかもしれません。スレッドはサポートしません。デバッグに苦労した覚えがあるので。あんまりスレッド好きじゃなくて。