6 điểm bởi princox 2026-03-01 | 7 bình luận | Chia sẻ qua WhatsApp

Giới thiệu dự án

Magpie là một dự án mã nguồn mở tự nhận là “ngôn ngữ lập trình đầu tiên được tạo ra cho AI agent”. Nếu các ngôn ngữ hiện có được tối ưu cho sự thuận tiện khi con người gõ mã, thì Magpie được tối ưu cho việc LLM sinh mã. Triết lý cốt lõi là “loại bỏ sự mơ hồ”. Trong Rust hay TypeScript, a + b đòi hỏi phải suy luận đó là phép cộng số nguyên hay nối chuỗi, có panic khi tràn số hay không, v.v.; nhưng trong Magpie, mọi phép toán đều được mô tả tường minh như i.add { lhs=%a, rhs=%b }. Cách rẽ nhánh cũng chỉ tồn tại một kiểu là cbr/br, và việc chuyển quyền sở hữu bộ nhớ cũng được biểu diễn bằng các phép toán tường minh. Luận điểm cốt lõi là “càng ít lựa chọn, LLM càng có ít điểm phải ra quyết định hơn, và lỗi sẽ càng ít hơn”.

Mô tả

Về nội bộ, ngôn ngữ này áp dụng cú pháp SSA (Static Single Assignment) và được biên dịch thành mã máy native thông qua LLVM. Quản lý bộ nhớ kết hợp ARC (Automatic Reference Counting) với các quy tắc sở hữu tường minh kiểu Rust để đảm bảo an toàn mà không cần GC. Theo benchmark được công bố, thời gian biên dịch là 155ms, nhanh hơn Rust (234ms) và TypeScript (268ms); tốc độ thực thi là 32ms, tương đương Rust; còn mức sử dụng bộ nhớ là 1.6MB, áp đảo so với TypeScript (69.2MB). Đặc biệt, ở chỉ số độ phức tạp từ vựng (Vocabulary Complexity), đại diện cho mức độ dễ dự đoán đối với LLM, Magpie đạt 0.107, chỉ bằng khoảng một nửa Rust (0.225) và TypeScript (0.231).

Tuy vậy, chính Magpie cũng cho biết rằng “số lượng token sử dụng nhiều hơn khoảng 2.3 lần so với các ngôn ngữ hiện có”, vì vậy tồn tại đánh đổi ở khía cạnh chi phí gọi LLM. Khi AI agent tạo mã phức tạp, việc giảm số lần thử lại hay hiệu quả token quan trọng hơn sẽ quyết định cách đánh giá tính thực tiễn của nó. Dự án được build bằng Rust và có thể cài đặt bằng cargo build.

git clone https://github.com/magpie-lang/magpie.git  
cd magpie  
cargo build -p magpie_cli  

7 bình luận

 
tyeolrik 2026-03-03

Ừm... mình thử tìm Magpie thì lại ra một ngôn ngữ khác (magpie-lang.org, được bắt đầu phát triển từ năm 2013), không rõ về cái tên này có vấn đề gì kiểu như bản quyền không nhỉ....

 
kuthia 2026-03-03

Tên của một loại thước đo khoảng cách laser mà tôi biết cũng là magpie đó haha

 
tyeolrik 2026-03-03

Nếu khác ngành thì có lẽ còn có thể cho qua được. Vì sản phẩm khác nhau mà?

Nhưng lại là cùng một ngôn ngữ lập trình nên mới buồn cười chứ haha... Nếu là tôi mà phát triển một ngôn ngữ mới rồi đặt tên là C++ hay Rust thì chắc có cảm giác sẽ bị mắng mất...?

 
rlaaudgjs5638 2026-03-02

Thú vị đấy. Bạn có kế hoạch phát triển nào trong tương lai không?

 
holywork 2026-03-01

Không có kết quả đo mức sử dụng token thực tế cho một tác vụ đơn lẻ, nên đây chỉ là suy đoán rằng nếu dùng Magpie thì số lần thử lại sẽ giảm đến mức này.

 
holywork 2026-03-01

So sánh thời gian biên dịch có vẻ kỳ nhỉ. Tại sao lại so sánh ms/token?

 
nemorize 2026-03-03

Có lẽ là vì đây là một ngôn ngữ "AI-native"(?) chăng?
Vì nó không phải là ngôn ngữ được tạo ra để con người trực tiếp viết, nên chuyện độ dài mã thực tế ra sao này nọ cũng không có nhiều ý nghĩa,
mà có vẻ ý tưởng là đo thời gian biên dịch đối với prompt để hiện thực hóa một chức năng nào đó... haha