クローズドだったコンパイラを公開
Modularは2026年8月18日、プログラミング言語MojoをLLVM例外条項付きのApache 2.0ライセンスの下で完全にオープンソース化したと発表した。コンパイラ、ツール類、および同言語のビルドに必要なその他のコンポーネントのソースコードが、同社のメインGitHubリポジトリで公開された。
この動きは、その1週間前にリリースされたMojo 1.0に続くもので、Modularはこの節目についてソースの安定性を提供するものだと説明した。Mojoは4年間、オープンなコミュニティーとクローズドなコンパイラという形で開発されてきた。その期間中、同社はコンパイラ自体を公開する前に、標準ライブラリ、ツール、サポート資料、数十万行に及ぶカーネルコードを公開していた。
ModularはMojoを、GPU、AIアクセラレーター、その他の高度なコンピューティングハードウェアを利用するために設計された汎用言語と位置付けている。同社によるライセンスの選択は、幅広い採用と配布を可能にすることを意図している。発表によると、LLVM例外条項は同言語でビルドされたバイナリについてApacheの条項を拡張する。
今回の公開により、開発者がローカル環境で調査し、ビルドできる範囲が変わる。リポジトリをクローンした後、コントリビューターは`build-mojo`構成のBazelコマンドを使い、Mojoコンパイラと標準ライブラリをソースからコンパイルできる。Modularはプロジェクトのビルド手順とキャッシュを調整するためにBazelを使用している。
コントリビューション受け付け開始前のソース公開
もう一つの構成である`prebuilt-mojo`は、コンパイラを変更しない人向けに最新のナイトリービルド版コンパイラのバイナリをダウンロードし、ビルド時間を短縮する。MAXのカーネルやモデルをカスタマイズする場合には、ビルド済みのMojoコンパイラが依然として必要だと同社は説明した。コンパイラまたは標準ライブラリを変更する開発者は、ローカルのコードに対してプロジェクトのテストスイートを実行できる。
リポジトリを公開したからといって、すべての部分が直ちに外部からのパッチを受け入れるわけではない。Mojo標準ライブラリは2024年からコントリビューションを受け入れているが、Modularはまだコンパイラとツール類へのコントリビューションを受け付けていない。同社は2026年末までに受け付けを開始することを目指しており、詳細は後日提供するとしている。
同社は、この段階的な方針について、特にAI支援コーディングが一般化する中、コントリビューションを慎重に管理する必要があるためだと説明した。同社は、少人数の設計チームが言語の方向性を確立できる一方、一般からのフィードバックは内向きな判断を防ぐのに役立つと主張している。これはModularが表明している開発理念であり、独立した検証を受けた優位性ではない。
ユーザーにとって当面の違いは、可視性とガバナンスの間にある。上流プロジェクトは外部からのコンパイラまたはツール類へのコントリビューションをマージする準備が整っていないものの、実装全体を寛容なライセンスの下で閲覧、ビルド、変更できるようになった。質問やプロジェクトの共有には、引き続きフォーラムの利用をModularが推奨している。
したがって、Mojoのオープンソース化は一連の流れの始まりではなく、その完結となる。ライブラリとカーネルのコードが先に公開され、バージョン1.0が最新の言語上の節目を打ち立て、今度はコンパイラとツールチェーンが公開コードベースに加わった。次に約束されている段階は、実装の成熟に伴い、コントリビューションのプロセスをさらに開放することだ。



