Ôn Cố Tri Tân - nói dối e blog

Ôn Cố Tri Tân

Lần cuối cùng tôi đọc toàn bộ mã nguồn Lua, phiên bản lúc đó còn là 5.1. Tất nhiên tôi cũng đã nghiên cứu kỹ 5.0, còn các phiên bản 4.0 và 3.2 thì chỉ lướt qua thôi. Gần đây có chút thời gian rảnh, tôi quyết định tiếp tục viết cuốn “Tìm hiểu mã nguồn Lua” của mình. Trong kế hoạch ban đầu, tôi còn thiếu khoảng 6 chương quan trọng: máy ảo, lưu trữ mã byte, API trong C, trình thông dịch, cơ chế thu gom rác và các hàm thư viện chuẩn.

Đáng chú ý nhất là chương mới về máy ảo mà tôi vừa bổ sung. Để viết chương này, tôi phải đọc lại toàn bộ mã liên quan. Thật bất ngờ khi thấy Lua 5.2 đã thay đổi rất nhiều so với phiên bản trước, gần như từng dòng mã đều được chỉnh sửa kỹ lưỡng. Việc tự mình đọc hiểu với việc viết ra để người khác đọc quả thực khác biệt hoàn toàn. Khi phân tích từng dòng cụ thể, nhiều điểm hiểu biết trước đây của tôi hoá ra khá hời hợt. Ví dụ như: Tại sao dòng mã này lại ở đây mà không phải vị trí khác? Vì sao lại chọn cách triển khai này thay vì phương pháp kia? Những câu hỏi như vậy khiến tôi phải liên tục quay lại hiệu đính các chương đã viết trước đó khi phát hiện các mối liên hệ mới.

Về mặt trình bày, lần xuất bản PDF trước đây tôi áp dụng kiểu định dạng dành cho sách in tương lai, nhưng kiểu này gây lãng phí không gian khi đọc trên thiết bị điện tử, đặc biệt bất tiện khi xem mã nguồn. Do đó lần này tôi đã thiết kế lại bố cục với lề gọn hơn và kiểu chữ dễ đọc hơn trên màn hình.

Điểm mới nổi bật nhất trong bản cập nhật này chính là chương về máy ảo đã được hoàn thiện. Bạn đọc quan tâm có thể tải về tại đây: “Tìm hiểu mã nguồn Lua”. Tuy nhiên tôi khuyên các bạn không nên đọc vội vào thời điểm này, đặc biệt là những người muốn nghiên cứu kỹ lưỡng chứ không chỉ lướt qua. Bản thảo hiện tại vẫn đang trong quá trình chỉnh sửa liên tục, phiên bản bạn đọc hôm nay có thể đã thay đổi đáng kể chỉ vài ngày sau đó.

Thêm vào đó, sau khi hoàn thành chương mới, tôi tình cờ phát hiện một bạn đọc khác cũng đang viết bài phân tích tương tự gần đây. Xin phép chia sẻ đường link tham khảo này để các bạn quan tâm cùng khám phá.

0%