unsafe コードなしのガベージコレクション

https://fitzgen.com/2024/02/06/safe-gc.html

概要

TL;DR: 完全に safe Rust で実装されたGCのプルーフ・オブ・コンセプト — エルゴノミクスは犠牲になるが、実現可能であることは証明された。

主なポイント

  • トレース対象の参照をすべて Gc<> でラップする必要があり、型が特定のGCアロケータに永続的に結びつく
  • safe Rust でこの問題が解決可能であることを証明;将来の言語機能がエルゴノミクスの課題を改善する可能性がある
  • Alloy論文のサーベイ以降、少なくとも2〜3つの新しい Rust GC 実装が登場している

ディスカッション

  • [the-smug-one]: Gc<> ラッパーによって、型が一つの特定アロケータに永続的に依存してしまう
  • [ltratt]: Rust の GC 実装が多すぎて追い切れない;サーベイのアップデートが必要だ
  • コミュニティは、有効なプルーフ・オブ・コンセプトではあるが、現時点ではエルゴノミクスのコストが高すぎてプロダクション利用は難しい、という点で概ね一致。

HN(Hacker News)で議論を読む


原文(英語): Garbage Collection Without Unsafe Code


Type Link
Added Apr 22, 2026
Modified Apr 22, 2026