念願叶った
やっとブラウザのPlaygroundができた。
mruby-compiler2 を使っていて、ブラウザで動かすにはEmscripten等でsetjmpをエミュレートする必要があったので、wasm32-unknown-emscripten で動かしている。しかし、ちょっと基盤を作ったらあとはCopilot(Claude Sonnet 4.5)によっしゃオラっと書かせて終わった。
コードは毎回一からコンパイルしてVMを作っている。
mruby/edgeは連続でコードを読み込めない(ぇ...)のでそろそろその辺のサポートをしなければ...。
あとは、デザインをもっとこう、Claude感を軽減させたいんだけどどういうプロンプトがある?
UzumibiでやっとJSON APIが...
良かったですね。
流石にserdeとの連携は面倒では... と思っていたが、超簡単にできたし、なんなら `to_json` 定義したらそれを使ってくれるようになった。
`Rc<RefCell<&mut T>` なんて型を使っていいということも知らなかった。ていうかこの型何? 想定したようには動いてるけど...。
やっぱRustの本ちゃんと読まね〜とな。
mruby/edge 1.1.0
1.1.0 にする前に 40個ぐらいのメソッドを実装した気がする。幾つだ?
で、mruby自体の命令は85%ぐらい実装済みだったはず。細かいところも徐々に対応できてきた。そろそろmrubyテストスイートに挑戦かなあ。
それはそれとしてAIの恩恵を享受している。というっても難しい話ではなく、僕が風呂に入ったり家事をやっている間に、指示をすれば標準ライブラリやらなんやらを実装してくれるので、あまりにも便利というだけの話...。子育て世代なら、寝かしつけの間にも実装してくれるだろう。できたコードはもちろん全部読んでる。ちゃんとメソッドの補完とかができないらしく、雰囲気でコンパイルできないコードを書いてくるんで...。
しかしこんなに勢いよくコードが出てくると確かにQAに不安がある。テストも書かせたが、一つ一つ細かく動かしたかと言われると。
とにかく、OSSひとり親方には良い時代なのかも? gfxさんやmizzyさんの足元にも...アレですが。
ついに
色々日程を固められるようになったので、函館行きの飛行機やホテルを予約した。
はやく行きてえ…。
可能なら俺の書いた最高のソフトウェアの話もしてえ…かな。