コンパイラとビルドシステムが対話すれば、OSの無駄はなくなる
Communication Between the Compiler, the Build System, and Beyond
コンパイラ、ビルドシステム、パッケージマネージャが互いに情報を共有しないため、OSは最適化の機会を逃している。例えばC言語では、コンパイル単位が独立しているためにプログラム全体の最適化がリンク時まで遅れ、パッケージをまたいだ最適化もIRの互換性問題で困難だ。ビルド記述を通じてこれらが連携すれば、関数レベルのインクリメンタルコンパイルや、設定変更に応じた安全でアトミックなシステム更新が可能になる。
コンパイラ、ビルドシステム、パッケージマネージャが互いに通信できるようにすることで、コンパイラと依存関係の情報を活用してオペレーティングシステムを最適化するというアイデアは、どこまで推し進められるだろうか?