【大論争】「何億行ものC言語を全部Rustで書き直せ」というメモリ安全絶対主義に海外ニキが大激論!「Fil-C」「コスト無視」「書き換えバグ」
投稿日時: 2026/07/26 03:08
■ 概要・編集部サマリー
1. 【背景・メモリ安全絶対主義への疑問】テックブログにて、C/C++で書かれた既存インフラコードを「すべてRust等のメモリ安全言語でゼロから書き換えるべきだ」と主張する過激な絶対主義への批判記事が公開されました。 2. 【焦点・全書き換えの巨大コストとバグリスク】数億行におよぶLinuxカーネルやOS基盤ライブラリを無理に書き換える作業自体が、膨大な開発コストと新たなロジックバグを生み出すという現実的な問題点が指摘されています。 3. 【評価・Fil-Cなど現実的代替手段の評価】C言語コードをコンパイラレイヤでポインタ保護する「Fil-C」や静的解析ツールの導入など、新規開発でのRust採用とレガシーC資産の段階的保護を両立させる実用主義に共感が集まっています。
■ 「全C/C++コードRust書き換え論」が直面する経済的・技術的現実
米行政機関(ホワイトハウス等)によるメモリ安全言語の推奨を背景に、数億行におよぶ既存のC/C++ソースコードを「すべてRustへ書き換えるべきだ」とする理想論が広がっています。
しかし、長年稼働してきた安定コードを無用にリライトする作業自体が膨大な開発人件費を消費し、新たなドメインロジックのバグを生み出す危険性が強く指摘されています。
■ コンパイラ層による保護(Fil-C)と既存資産活用の実用主義
ソースコードの書き換えなしにC言語のポインタとバッファ境界チェックをコンパイルレベルで自動注入する「Fil-C」などのアプローチが評価されています。
二元論的な言語排除ではなく、既存のインフラ資産を生かしながらランタイムチェックや静的解析ツールで多層防衛を築く現実的な中間解が提示されています。
■ 新規開発でのRust採用とレガシー保守のベストバランス
新規モジュールや新規マイクロサービスにおいてはRust等のメモリ安全言語を積極的に選択しつつ、既存のC/C++基盤ライブラリについては安全なバインディングや段階的リファクタリングで保護する柔軟性が求められています。
イデオロギー的な不毛な対立を避け、投資対効果に基づいた健全なソフトウェアアーキテクチャの構築が不可欠です。
海外掲示板の反応・まとめ
■ 『メモリ安全絶対主義者』に関する論考の紹介。Rust派とC言語拡張・Fil-C派による過熱した議論が語られています。
『セキュリティのために何億行もあるC/C++コードを全件Rustでゼロから書き換えるべきだ!』って叫ぶRust原理主義者にブチギレてる記事でワロタw
>>2 30年動作実績があるLinuxカーネルやOpenSSLを全書き換えするなんて開発コストも時間も現実味ゼロなんだから、Fil-CみたいにCコンパイラ側でメモリ保護する方が圧倒的に現実的よな。
>>3 でも新規開発で2026年にもなってC/C++使うのは流石に擁護できん。新しく書く部分は全部Rustに統一するのが安全への最短ルートだわ。
原理主義(理想)と現場の予算・保守(現実)のレスバトル、いつ見ても平行線で面白い。
Rust書き換え派も『新規開発でRust使おう』って言ってるだけなのに、C言語派が過剰反応してる説ないか?
Hacker Newsでもスコア130超えてコメント230件オーバーの大大荒れ状態で草
>>7 『C言語のバグで世界中が何兆円も被害受けてるんだから書き換えコストなんて安いもん』っていう極論出されててワロタ。
書き換えた瞬間に新しいロジックバグが生まれるリスクを完全に無視してるのが原理主義者の怖いところ。
Fil-C みたいな『既存のCコードにコンパイル時ポインタ境界チェック埋め込む』アプローチがもっと普及すれば一番平和なんだが。
ホワイトハウスやNSAが『C/C++使うな』って公式通達出したから、原理主義者がイキりまくってる背景もある。
まあRustとCのFFI(相互運用)がもっと簡単になれば、部分的な置き換えが進むからそれが一番良い。
『全てのC言語は悪』みたいな二元論を押し付けるんじゃなくて、ツールとコンパイラで多層防衛するのがプロエンジニア。
ソフトウェアエンジニアリングの本質はトレードオフ(費用対効果)の計算であることを思い出させてくれるな。
理想論と現実の狭間。言語の二元論を超えたスマートなセキュリティ対策に期待したいな。