comelang version 0.9.6リリース
です。
ちょっとエディッターのバグが我慢ならないため、BoehmGCを捨てました。
new (GC) intなどでBoehmGCを使うことはできますが
デフォルトではオリジナルのヒープシステムです。
詳細はREADME.mdを見てください。
このアルゴリズムはかなりバグがあったのですが、だいぶバグが減ったと思います。
とりあえず、エディッターは動きました。
オリジナルのヒープシステムはneo-cでも採用していましたが
comelangの方でもだいぶまともになってます。
ソースファイルの方もシンプルで、あんまりバグが入る余地はないかなと思います。
とりあえず、version 1.0.0に向けてぼちぼちやっていきます。
Pythonクローンのyappyが動いて、あとはllファイルで型チェックしなくても
コンパイラ側で型チェックしてくれるようにするのが目標ですかね。
わかっているバグは関数が複数回定義された場合前回の定義が消されるバグです。
これはllファイルをコンパイルするときにエラーとなりますが
ちょっと予期せぬバグが出るかもしれません。
まあ、セグフォも減って親切なコンパイラなり自分的には完璧だと思ったら
version 1.0.0にしますね。
しかし、ユーザーはそれほど増えないでしょう。今どきC言語かという感じですよね。
Goを使ったほうが良いでしょう。Rustは僕はあまり好きではないです。
シンプルなコンパイラのほうが生き残るような気がします。
僕はあくまで自分で作ったコンパイラで遊んでみたかっただけなので
自己満足です。エディッターはそのコンパイラで作ったものを使ってます。
つまり自分で作ったコンパイラで作ったエディッターで自分の作ったコンパイラや
自分で作ったエディッターやPythonクローンを修正しています。
そうです。自己完結しております。遊びとしては面白いですね。
まれにC言語が好きで、あくまでC言語に拘り、文字列ライブラリやコレクションや自動freeのヒープシステムが欲しいという、あなた。
そう、そのあなたに僕のコンパイラが届けばいいです。
良かったら試してみてください。