Compilers: Principles, Techniques, and Tools

Compilers: Principles, Techniques, and ToolsAho, Sethi, Ullman, Compilers: Principles, Techniques, and Tools, Addison-Wesley, 1986. ISBN 0-201-10088-6 là một giáo trình khoa học máy tính nổi tiếng của Alfred V. Aho, Ravi Sethi và Jeffrey D. Ullman về xây dựng chương trình dịch. Mặc dù đã qua hơn hai thập kỉ kể từ lần xuất bản đầu tiên, cuốn sách vẫn được coi là giáo trình kinh điển về công nghệ chương trình dịch.

Cuốn sách cũng được biết đến với cái tên "Cuốn sách rồng" (Dragon Book) vì trang bìa của nó vẽ hình một hiệp sĩ đang chiến đấu với một con rồng, một hình ảnh ẩn dụ cho việc chế ngự sự phức tạp tính toán. Tên gọi này cũng chỉ cuốn sách tiếp theo của Aho và Ullman's mang tên Principles of Compiler Design.

Phiên bản đầu tiên
Phiên bản đầu tiên được gọi một cách không chính thức là "cuốn sách rồng đỏ" để phân biệt nó với phiên bản thứ hai và cuốn Principles of Compiler Design của Aho và Ullman's  (1977, đôi khi được gọi là "cuốn sách rồng xanh" vì con rồng trên bìa có màu xanh).

Một phiên bản mới của cuốn sách được xuất bản vào tháng 8 năm 2006.

Những chủ đề được bao hàm trong phiên bản đầu tiên gồm có:
Cấu trúc chương trình dịch
Phân tích từ vựng (gồm cả biểu thức chính quy và otomat hữu hạn)
Phân tích ngữ pháp (kể cả ngữ pháp phi ngữ cảnh, bộ phân tích LL, phân tích dưới lên, và bộ phân tích LR)
Biên dịch dựa ngữ pháp
Kiểm tra kiểu (kể cả chuyển đổi kiểu và đa hình)
Môi trường thực thi (kể cả truyền tham số, bảng ký hiệu và cấp phát bộ nhớ)
Sinh mã (gồm cả sinh mã tức thời)
Tối ưu mã

Phiên bản thứ hai
Tiếp nối truyền thống của các phiên bản trước, phiên bản thứ hai có hình hiệp sĩ và con rồng trên bìa. Các ấn phẩm khác nhau trong sê-ri được phân biệt rõ hơn dựa vào màu của con rồng. Phiên bản này được gọi một cách không chính thức là "rồng tím". Monica S. Lam từ đại học Stanford trở thành đồng tác giả.

Phiên bản thứ hai được bổ sung một số chủ đề:
 directed translation
 new data flow analyses
 máy song song
 JIT compiling
 bộ dọn rác
 new case studies.

Xem thêm
Trình biên dịch
Ngôn ngữ lập trình
Wizard book
Principles of Compiler Design

Tham khảo

Liên kết ngoài
 Book Website at Stanford with link to Errata
 Sample chapters from the second edition. 
 Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman. Compilers: Principles, Techniques, and Tools (2nd Edition), 2006 tại Amazon.com.

Thể loại:Sách năm 1986
Thể loại:Sách năm 2006
Thể loại:Xây dựng chương trình dịch
Thể loại:Sách khoa học máy tính