Phiên Bản Cuối Cùng Của Lua 5.1
Ngày hôm nay đã đến - ngày mà thông báo mong đợi cuối cùng cũng xuất hiện: Lua 5.1 (final) đã chính thức được phát hành tại địa chỉ Chúng tôi xin chân thành cảm ơn sự kiên nhẫn của tất cả mọi người trong suốt quá trình phát triển đầy thử thách này. Đặc biệt cảm ơn những đóng góp quý báu từ cộng đồng - những ý kiến đó đã giúp Lua ngày càng hoàn thiện hơn. Hãy cùng trải nghiệm phiên bản mới! Và bây giờ chúng tôi sẽ tập trung vào việc phát triển phiên bản 5.2 :-) –lhf
Hôm qua khi đang trò chuyện với anh Mạnh Nham trên Gtalk, tôi vừa giới thiệu về tiến độ của phiên bản Lua 5.1 RC. Lúc đó tôi dự đoán final release sẽ ra mắt trong vài ngày tới, nhưng thật bất ngờ khi nó đến nhanh đến vậy. Khi kiểm tra sự khác biệt giữa các phiên bản, tôi phát hiện ra rằng thay đổi cuối cùng từ rc4 chính là đáp ứng yêu cầu tôi đề xuất hôm trước về việc cải thiện thông tin debug cho các mô-đun biên dịch. Thật vinh dự làm sao! Còn từ rc3 lên rc4, tôi cũng đã góp phần đề xuất hỗ trợ số hexa. Hai thay đổi này đều được tích hợp vào phiên bản chính thức chỉ trong vòng một ngày - phải thán phục tốc độ làm việc đáng kinh ngạc của cộng đồng mã nguồn mở quốc tế.
Nhân đây xin dành lời khen ngợi đặc biệt cho LuaJIT, đặc biệt là dự án con DynASM với thiết kế tinh tế đến mức hoàn mỹ. Những ai chưa từng trải nghiệm nên xem qua các ví dụ minh họa. Cuộc trò chuyện đêm qua chủ yếu xoay quanh hiệu suất làm việc và tính nghiêm túc của cộng đồng Lua. Theo tôi, điểm mạnh nhất của Lua nằm ở mã nguồn gọn gàng, dễ hiểu đến mức bất kỳ ai cũng có thể đọc hết toàn bộ mã nguồn. Điều này khiến Lua trở nên trong suốt tuyệt đối với người dùng, mang lại trải nghiệm mượt mà hơn cả Python. Nếu có ai đó viết một cuốn sách phân tích mã nguồn Lua, đó chắc chắn sẽ trở thành giáo trình kinh điển về lập trình C. Bản thân tôi đã học được rất nhiều điều thú vị về thư viện chuẩn C và kỹ thuật xây dựng dự án quy mô lớn qua việc nghiên cứu mã nguồn Lua.
Sự cẩn trọng của dự án Lua thể hiện rõ qua việc nâng cấp từ phiên bản 5.0 lên 5.1 phải mất đến ba năm trời (trong khi cộng đồng vẫn duy trì hoạt động sôi nổi không ngừng). Mã nguồn Lua 5.1 đẹp mắt hơn nhiều so với 5.0.2, chỉ cần nhìn vào file luaconf.h mới thêm vào cũng đủ thấy tâm huyết của các tác giả. Điều đáng ngưỡng mộ là dù qua nhiều lần nâng cấp, Lua vẫn giữ được sự gọn nhẹ nhờ vào đội ngũ phát triển nhỏ gọn. Nghe nói ban cố vấn tiêu chuẩn của Lua chỉ có vỏn vẹn 3 thành viên. Chính nhờ vậy mà các yêu cầu hợp lý được thông qua nhanh chóng - như những đề xuất của tôi gần đây cũng đã được tiếp nhận, dĩ nhiên là khi bạn hiểu rõ triết lý thiết kế của Lua. Họ cũng dám mạnh dạn loại bỏ những tính năng lỗi thời. So với tiêu chuẩn C++ phức tạp và rườm rà, điều này thật đáng ngưỡng mộ. Cũng giống như vậy, dưới ảnh hưởng của đồng nghiệp, tôi có thiện cảm đặc biệt với FreeBSD hơn là Linux. Chính đội ngũ nhỏ gọn đã giúp FreeBSD giữ được mã nguồn đẹp mắt - chỉ cần xem cách tổ chức các file tiêu đề trong thư viện crt cũng đủ hiểu.
Tôi nghĩ đội ngũ phát triển engine game của chúng ta cũng nên duy trì quy mô hiện tại như vậy, để vừa giữ được tính linh hoạt vừa đảm bảo chất lượng sản phẩm.