minutus
https://github.com/genya0407/minutus
TODOs
✔ mruby のバージョン指定できるようにする
✔ いい感じの initializer function をマクロで生成できるように
✔ マクロ周りのリファクタ
✔ mruby をいい感じに eval できる便利メソッドを追加
✔ 実用的な mrbgem をなんか作る
https://github.com/genya0407/minutus/tree/trunk/examples/mruby-polars
✔ build_config.rb を minutus-mruby に渡せるように
無理そうなので諦める(別の mrbgem を入れたかったら自前で mruby をビルドしてもらう)
✔ implement funcall
T を返していたところで DerefPtr を返す
funcall を DerefPtr に対して実装
funcall のラッパーを生成するマクロを作る
✔ mrbgem ジェネレータ作る
https://github.com/matsumotory/mruby-mrbgem-template
ベースは出来たので、あとは minutus 独自拡張を入れる
できた
✔ Linux で動かせるようにする
✔ README 書く
✔ イケてないところをザッと直す
✔docs.rs をアレする
✔リリース
✔ブログ書く
✔define_funcall を任意の型に定義できるように
MinuValue を trait にして、define_funcall は MinuValue に依存するようにする
✔ try / Result
✔mruby レイヤの例外をハンドリングできるように、全体的に TryFrom / TryInto のインターフェースにする
struct の derive で MrbHash に変換できるようにする
try_into_mrb を derive する
https://serde.rs/data-format.html
マクロのエラーハンドリング
simple http server 的なのを作ってみる
GC と向き合う
define_funcall で variable name を入れ忘れても動くように
MrbConversionError にエラーの型名を入れる
yaml mrbgem?
https://github.com/chyh1990/yaml-rust
inline
Win 対応
.lib に rename するやつと https://github.com/mruby/mruby/blob/master/doc/guides/compile.md#embedding-mruby-in-your-application で行ける気がする