2025-01-01から1年間の記事一覧
www.oreilly.co.jp ちょっとしたご縁があり読む機会がありました。感想を残しておきます。あと、1ヶ月に1回は技術ブログ記事書かな〜ということで...*1。 最初に全体的な感想を残しておくと、この本は僕のように漠然と型を書き、 Clone::clone() を呼び、深…
RubyKaigi 2025、お疲れ様でした。 今年も発表者の末席を務めさせていただきました。 rubykaigi.org 資料は以下です。 udzura.jp 今年も英語での発表をしたわけですが、英語での登壇準備は年を追うごとにツールのノウハウが積み重なっていくのを感じ、特に今…
Rubyを、以下のオプションでビルドするとYJITのデバッグ機能が使える(rbenvを利用する例)。 $ export CONFIGURE_OPTS="--enable-yjit=dev" $ rbenv install 3.4.2 その中にはISeqが機械語にコンパイルされた結果を確認する RubyVM::YJIT.disasm(isec) とい…
あまり公式にアナウンスされていない気がするが*1、 ruby.wasm は実はComponent Model対応が済んでいる。 github.com 多分この辺から。なので、RubyKaigi 2024の段階ではComponent Model対応したものを動かせていた。スライドで言うとこの辺 *2。 この記事で…
まず、wasmbotsとは という話をしないといけません。これはwasmバイナリを作って、ダンジョン探索をするゲームです。 shaneliesegang.com 具体的には? ダンジョンを探索するためのプログラムを書いて、それを特定のインタフェースを満たしたWASMファイルに…
mruby/edge バージョン 1.0.3 を出した。 https://crates.io/crates/mrubyedge これは mruby/edge バージョン 1.0.0 ではないのかという話だが、ちょっと前に 1.0.0 を出したのだが、その時点では Hash と Object#== がなかったりしたので後から追加していた…
令和最新版、と一度言ってみたかった。 先日、手作りでWASM Componentのバイナリを作ってみたんですが、mruby/edgeは全部Rustで書いているので、では最近のRustではどうするといいかをしゅっと残しときます。 結論ファースト zenn.dev ここに書いてある通りで…
まずは実験的ツールの紹介 componentize_any というコマンドラインツールを作りました。Rubyで書いたので以下の方法でインストールしてください。 $ gem install componentize_any ## もしくは $ git clone https://github.com/udzura/componentize_any.git …
明けましておめでとうございます! タイトルの通り。mruby/edge のVMを、mruby/c 1.2 相当の内容に書き換えた。 mruby/c 1.2 の実装は以前軽く読んだ。 udzura.hatenablog.jp PRはめちゃでかい。 +2,605 −1,376 だそうです。 github.com 合わせてcrateをいく…