0.0.1 リリースまでの実装計画 - Scheme VM を書く

今作っている Scheme 処理系の実装が C++VM を書くことに移行しつつあるので 0.0.1 リリースまでにやることをリストアップ。
0.0.1 では簡単な Wiki が実用的な速度で動くことを目標とする。
多少貧弱で不完全でも一度リリースするかしないかで大きく違うと思うし初回リリースでは完璧さを目指さない。

  • Fixnum, String, Symbol, Vector などのデータ型を実装
  • コンパイラGauche 上で動くためコンパイル済みコードを気軽に読み込める仕組みが必要
    • read の実装(この時点では port の実装は手抜きで良い)
  • VM ループを作成
    • 主要な基礎命令の動作を単体で確認
  • read して VM ループ実行する仕組みを実装
  • write/display などを考慮した port の実装
  • 主要な手続きの実装
  • コンパイラVM で動くようになる(つまりGaucheの助けがいらなくなる)
  • 正規表現の実装(鬼車)
  • Bignum の実装(ライブラリの移植かな?)
  • プロファイル/最適化
  • Wikiが動くようになる
  • 0.0.1 をリリース

0.0.1 の範囲外(たくさん)

  • numberまわり
    • 大変そう。
  • 標準ライブラリ
  • 例外/コンディション
  • ライブラリのバージョン/meta