Clover2開発日誌

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

Commandクラスのバグを修正

ちょっとCommandクラスが不安定だったので修正しました。

そのためmbstowcsの仕様が少し変わってます。必ずnull-terminatedされます。引数の数も変わってます。

 

後はシェルモードでls -al | less, egrep ^p src/*.cなどが動くようになりました。内部的には単なるメソッドとなります。

これによってシェルとしてREPLが使いやすくなってます。

あとはmake && make install && make testや./conifugre --prefix=$HOME --with-optimize辺りが動くようにしたいです。単なる糖衣構文になるので、特に難しくはないです。

僕自身もREPLとして使っていってます。なかなか楽しいです。

シェルモードが満足行くできになったら言語機能をSwiftに近づけていく作業に入りたいと思います。主にコンパイラの方の拡張なので、それほど難しくはないと思います。

そっちの方がユーザーに喜ばれそうですね。SwiftとかKotlinに近づけてモダンなプログラミング言語にしたいと思います。シェルモードはおまけです。やっぱり自分自身で使ってあげられないと、愛着もわかないので、、、。

 

それでは、enjoy programing!