The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages. |
Eric S. Raymond氏は1月21日(米国時間)、GCCのメーリングリストへ「clang and FSF's strategy」というメールを投函した。
同氏はメールにおいてGCCが掲げているプラグイン構造を持たないというポリシーを変更すべき時期にきているのではないかと提案。LLVM Clangの存在感が高まっていることを受けて、これまでのポリシーを継続することに疑問を投げかけている。LLVM Clangとの健全な競争状態を実現する方がエコシステムとして優れているのではないかと指摘した。
同氏はLLVM Clangはプロダクション品質ではあるがGCCほどは成熟していないとしたものの、エラーメッセージの出力のわかりやすさなどいくつかの点ではGCCよりも突き抜けていると説明。向こう3年間から5年間といった期間を経てGCCの分野において強敵になるだろうと推測している。もともと商用ベンダによるロックインを避けるといった目的でGCCはプラグイン構造を持たないことを定めてきたが、商用ベンダとの競争ではすでにGCCが勝利しており今後ベンダロックインの動きにつながる可能性は低く、その必要性はもはや薄れていると説明している。
同氏は純粋に技術的な競争をした方が健全だし、最終的にGCCが勝ってもLLVM Clangが勝っても目的は到達できるが、できればどちらも素晴らしい製品へと仕上がっていってくれた方がよいと説明している。
これまでGCCはオープンソースプロジェクトの主要コンパイラとして重要な位置を担ってきた。しかし5、6年ほど前から代替コンパイラを模索する動きが活発化。現在ではコンパイル時間が短く、さまざまなプログラミング言語に対応し、エラーメッセージも開発者にとってわかりやすいといった理由でGCCからLLVM Clangへ移行するケースが増えている。BSDライセンスを好むベンダやプロジェクトがLLVM Clangを採用する動きもある。
一方、Eric S. Raymond氏が指摘しているようにGCCは対応アーキテクチャの広さとクロスビルドの強さが突き抜けているなど、LLVM Clangでは代替できない面も持っている。