引き続き積読の消化、ちょうど10月号が発売したばかりだけどやっと追いついた。
国立新美術館でやっているルーヴル展にちなんでレオナルドダヴィンチの紹介だった。個人的には杉本博司の対談が良かったかなあ。
ルーヴル展、レオナルドダヴィンチの作品を正面で見るためには90-120分並ばないとダメ、という話をみて本当にうんざりしている。別にこういうのを並ぶ気は一切ないので、普通に展示会場には入れて、行列の絵は無視して他のを見ます、とかができればいいのだけど。
週末はゲームをしながら Windows で Ruby の手強い課題を claude を回して解決させるというのをやっている。今週は Windows が遅いのは何とからないのか、最近の Windows で使える API を活用した裏技とかないのか、というのを調べていたら結局は「YJIT/ZJIT の有効化です」という「はい」という結論に達したので、claude を回し続けたらあっさり動いてしまった。
基本的に公式 Rust のコンパイラのツールチェーンは msvc バージョンで正式版だし、mswin のビルドでは外しているだけなので、まずは rustc で yjit をビルドせよ、そのあとに mswin のビルド処理をいじって link せよ、最後にテストを回して落ちるところを全て直せ、という指示でできてしまった。
https://github.com/ruby/ruby/pull/19114
Rust には 32bit というものがなく、Windows の long 問題(これは別のところで書く)を踏んでしまい、各所で切り詰めや取り出し、という hack が必要なものの、それ以外は細々した Windows の制約を頑張って回避するだけでちゃんと動いた。
usa さんとまじで動いた、という話をしていて「本当にこいつ yjit 組み込んでいるのか?」と不安になったので、ruby-bench でちゃんと高速化してるか検証させたら、案の定 mswin では ruby-bench が全然動かない、というのをふんで「はいはい」とはなったけど、かろうじて動くベンチをいくつか回したら 1.5x-2.5x faster って感じで平均して2倍は早くなってるようなので良かった。
この後にもうちょっとレビューを回して k0kubun 君などに見てもらったらマージ、できるといいなあ。
この日は夕方に妻が出張から帰ってくるので、仕事を切り上げて羽田に迎えにいった。行きは少し混んでいたかな、って感じだったけど、ほぼ止まらずにあっさりと到着した。
羽田について妻を待つ間に軽く夕食を、と思って眺めるとどこも1600-2200円くらいの空港価格でスキップしていたら、スタバのホットドックなどが300-600円と他の店舗と同じ価格で「安いなこれ」となってホットドックにしてしまった。お疲れ様でした。
そうこうしているうちに妻がセキュリティエリアから出てきたので合流してサクッと帰宅。お疲れ様でした。