Modular在程式語言Mojo 1.0發布一周後,正式公開Mojo編譯器與相關工具鏈原始碼,採Apache 2.0搭配LLVM例外條款授權。開發者現在可取得過去未公開的編譯器原始碼,自行修改、建置與測試,Mojo語言開發所需的主要程式碼也已集中到Modular的GitHub儲存庫。
Mojo是Modular開發的通用程式語言,設計目標是讓開發者使用同一套語言處理CPU、GPU與AI加速器等不同運算硬體。Mojo推出後採分階段方式開源,先公開標準函式庫,之後再釋出大量以Mojo撰寫的運算核心程式碼與相關工具,但編譯器本身過去仍未公開。
現在編譯器原始碼釋出,開發者可以從Modular的modular GitHub儲存庫取得完整程式碼,並透過Bazel建置系統自行編譯Mojo編譯器與標準函式庫。若修改編譯器或函式庫,也能直接執行相關測試,檢查修改後的程式是否正常運作。
官方同時保留兩種建置方式,需要修改Mojo本身的開發者,可以從本機原始碼重新編譯整套工具,而若不需要修改編譯器本身,則可由建置系統下載最新的每日建置版編譯器,不必花時間重新編譯整套工具鏈。
Mojo採Apache 2.0搭配LLVM例外條款,允許開發者使用、修改及散布原始碼。依官方說明,LLVM例外條款也進一步放寬以Mojo建置與散布編譯後程式時的授權限制。
Mojo在8月11日發布1.0版,開始對核心語言與已標示穩定的標準函式庫API提供1.x期間的原始碼相容性保證。Modular先前已表示,Mojo 1.0是開源編譯器前的重要階段,如今在1.0推出約一周後公開編譯器與工具鏈。不過,目前若要修改Modular旗下AI推論框架MAX的運算核心或模型,仍需要使用官方預先建置的Mojo編譯器。
Comments (0)