Nixがデバッガの半分を書いてくれた
Nix wrote half of my debugger

Nixビルドの決定論的VM「Rewind VM」を使い、レースコンディションを再現・特定するデバッガを開発。ソースパネル、gdb連携、スレッドレーン、比較タブなど機能が急速に充実したが、その多くはNixが提供するderivationの入力、ソース、デバッグシンボル、バイナリキャッシュの仕組みに支えられていた。銀行口座の例で、失敗する実行と成功する実行の分岐点をステップ単位で特定し、16のスケジュールで検証する様子を紹介する。
新しい機能を追加するたびに大きなコード変更が必要だと思っていたが、毎回同じことに気づいた。各機能の難しい部分はすでに出来上がっていて、Nixがそれをやってくれていたのだ。
HNでの議論
30- pmarreck
Nixが何を提供していて、なぜクールなのかを正確に理解しているのに、AIが登場して基本的に「問題を解決」してくれるまで、それをマスターしようとしなかった開発者が大量にいるはずだ。おそらく1年以上前のNix開発者の10倍くらいいるだろう。
だから、AIがNixの採用を急速に加速させるだろうと予想している。願わくば、それが素晴らしいものだから。
- tecoholic
最近のNixを見ていると、まるでむち打ちのような体験だ。完全に決定論的なシステムがあるかと思えば、LLMもある。神よ ;)
- saagarjha
これは基本的にrrを再実装しているように思えるのだけど、Nixがこれとどう関係するのかちょっと混乱している。
- __MatrixMan__
ビルド以外のものもどんどんNixビルドに移している。自分でキャッシュの無効化を実装したくないからだ。これもそうするもう一つの理由になりそうだ。
- Cyph0n
おい、これは本当にすごいものだ。Faridは本当にNixの傑作を次々と出しているな、ハハ。これはAntithesisランタイムのミニ版/機能縮小版のように聞こえるけど、自分のマシンで動くんだ。
気になるのは、Rewindはランダム性をどう扱うのか?