Ngày 18 tháng 8, Modular đã đưa mã nguồn trình biên dịch và bộ công cụ của Mojo lên GitHub, hợp nhất vào kho chính modular/modular, với giấy phép Apache 2.0 kèm điều khoản ngoại lệ LLVM. Cùng đợt này còn có hàng trăm nghìn dòng mã kernel GPU viết bằng Mojo. Trước đó chỉ có thư viện chuẩn là mở, phần này đã nhận đóng góp từ bên ngoài từ năm 2024, còn trình biên dịch thì luôn bị khóa trong nội bộ công ty.
Thời điểm được chọn khá tinh tế. Mojo 1.0 vừa ra mắt ngày 11 tháng 8, điểm bán chính của phiên bản đó là cam kết ổn định mã nguồn: cú pháp và hệ thống kiểu đã được chốt, lỗi tham chiếu không hợp lệ đã có chẩn đoán. Một tuần sau, trình biên dịch được mở mã nguồn, coi như ghép đủ hai mảnh ghép cho thông điệp "ngôn ngữ này có thể đầu tư lâu dài".
Lời hứa được thực hiện, nhưng người thực hiện đã đổi
Khi Mojo ra mắt lần đầu vào tháng 5 năm 2023, lộ trình mà Chris Lattner đưa ra đã ghi rõ việc mở mã nguồn, chỉ là không có thời hạn cụ thể. Giữa chừng định hướng cũng đổi một lần: ban đầu Mojo được định vị là siêu tập của Python, dựa vào khả năng tương thích mã có sẵn để thu hút người dùng; đến tháng 8 năm 2025, hãng đổi giọng, nói rằng Mojo chưa chắc sẽ trở thành siêu tập đầy đủ của Python, và không thành cũng không sao. Định vị chuyển từ "Python nhanh hơn" sang "ngôn ngữ hệ thống chuyên viết cho GPU", con đường di trú cũng đổi sang dựa vào AI hỗ trợ viết lại thay vì tương thích cú pháp.
Người hoàn tất bước mở mã nguồn này lại là bên mua lại. Qualcomm ký thỏa thuận cuối cùng với Modular vào ngày 21 tháng 6, hoàn tất giao dịch vào ngày 29 tháng 7, giá trị thương vụ tối đa 19,2 triệu cổ phiếu phổ thông của Qualcomm, điều khoản tài chính không được công bố. Chris Lattner giữ chức Phó chủ tịch điều hành cấp cao phụ trách Phần mềm và Nền tảng AI tại Qualcomm Technologies, ba thương hiệu Mojo, MAX, Modular Cloud vẫn được giữ lại. Bài blog công bố mở mã nguồn đăng trên modular.com, nhưng quyết định lại đến từ San Diego.
Lịch sử của Qualcomm với mã nguồn mở luôn phức tạp, việc hỗ trợ driver Snapdragon trong nhân Linux từ lâu bị cộng đồng phàn nàn. Chưa đầy một tháng sau khi hoàn tất thương vụ, họ đã đưa toàn bộ trình biên dịch ra công khai, nhịp độ này nhanh hơn phần lớn dự đoán.
Đã mở mã nguồn, nhưng chưa mở quy trình phát triển
Có một chi tiết dễ bị bỏ qua: mã nguồn có thể đọc, sửa và phân phối, nhưng bản vá từ bên ngoài tạm thời chưa được chấp nhận. Modular nói rõ trong thông báo rằng họ chưa sẵn sàng nhận đóng góp cho trình biên dịch và bộ công cụ, mục tiêu là mở trước cuối năm nay. Nói cách khác, bước này hiện tại chỉ là chuyển đổi giấy phép từ source available sang open source, phần hợp tác cộng đồng phải chờ đến nửa sau của câu chuyện.
Bản thân việc chọn giấy phép cũng truyền tải thông điệp. Apache 2.0 kèm ngoại lệ LLVM là tổ hợp mà chính dự án LLVM đang dùng, tác dụng là mã nhị phân biên dịch ra không bị giấy phép của thư viện runtime lây lan, sản phẩm thương mại đóng nguồn có thể phân phối trực tiếp. Với một ngôn ngữ nhắm vào hạ tầng AI, điều này thực tế hơn cả việc mở hay không mở mã nguồn — các hãng chip và hãng đám mây có sẵn lòng nhúng nó vào chuỗi công cụ của mình hay không, cửa ải đầu tiên chính là điều khoản này.
Đối chiếu với tác phẩm trước của Lattner sẽ rõ hơn. Swift ra mắt năm 2014, mở mã nguồn vào tháng 12 năm 2015, cách nhau một năm rưỡi, Apple cũng theo cách công bố mã trước rồi mới công bố cơ chế quản trị. Rust đi con đường khác, lớn lên trong kho mã nguồn mở ngay từ đầu. Mojo hiện đang ở giữa hai hướng đó: ba năm đóng nguồn đổi lấy sự tự do để chốt cú pháp, cái giá phải trả là quy mô cộng đồng chưa bao giờ lớn lên được.
Hiện chạy được trên những nền tảng nào
Mojo hỗ trợ macOS và Linux, hỗ trợ Windows vẫn đang được phát triển. Phần cứng mục tiêu bao trùm CPU, GPU và các loại chip tăng tốc AI, thiết kế ngôn ngữ rõ ràng vay mượn mô hình bộ nhớ của Rust, đồng thời giữ khả năng gọi qua lại hai chiều với Python — trong Mojo có thể gọi Python, ngược lại cũng được.
Định vị này đặt vào bản đồ của Qualcomm thì khá hợp lý. Năng lực tính toán ở trung tâm dữ liệu và thiết bị biên ngày càng đa dạng về kiến trúc, mỗi hãng chip tăng tốc lại tự duy trì một chồng phần mềm riêng, sự lặp lại công sức là rất lớn. Lattner công khai phát biểu khi thương vụ hoàn tất rằng cuộc sáp nhập này sẽ đẩy nhanh mục tiêu của Modular, cung cấp phần mềm AI thống nhất cho phần cứng của mọi hãng. Qualcomm muốn dùng các sản phẩm kiểu Dragonfly để lấn vào thị trường trung tâm dữ liệu, thứ họ đang thiếu chính là một lớp trung gian giúp lập trình viên không phải viết lại mã mỗi khi đổi chip.
Thử thách khắc nghiệt hơn nằm ở giai đoạn sau khi mở đóng góp cho trình biên dịch. Sự sống còn của một ngôn ngữ không nhìn vào số sao trên kho mã, mà nhìn vào có bao nhiêu người sẵn lòng duy trì thư viện bên thứ ba cho nó. Thư viện chuẩn của Mojo đã mở hai năm, mức đóng góp từ cộng đồng không lớn; tầng trình biên dịch có ngưỡng vào cao hơn, đến mốc cuối năm sẽ thu hút được bao nhiêu người bảo trì bên ngoài, điều đó sẽ nói lên nhiều hơn thông báo giấy phép lần này.
Nguồn tham khảo: Blog chính thức của Modular, thông báo dành cho nhà đầu tư của Qualcomm, CocoLoop, Phoronix; đã kiểm chứng tổ hợp giấy phép, mức giá 19,2 triệu cổ phiếu và mốc thời gian hoàn tất thương vụ.