Compilers: Principles, Techniques, and Tools

Compilers: Principles, Techniques, and Tools[1] là một giáo trình khoa học máy tính nổi tiếng của Alfred V. Aho, Ravi SethiJeffrey 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.[2]

Compilers: Principles, Techniques, and Tools (2nd Edition)
Bìa của phiên bản thứ hai (Bắc Mỹ) với hiệp sĩ và con rồng
Thông tin sách
Tác giảAlfred V. Aho, Monica S. Lam, Ravi SethiJeffrey D. Ullman
Ngôn ngữTiếng Anh
Nhà xuất bảnPrentice Hall (2nd edition)
Ngày phát hành1986, 2006
Số trang1000
ISBN0321486811, ISBN 978-0321486813
Số OCLC12285707

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 sửa

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 sửa

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 sửa

Tham khảo sửa

  1. ^ Aho, Sethi, Ullman, Compilers: Principles, Techniques, and Tools, Addison-Wesley, 1986. ISBN 0-201-10088-6
  2. ^ “The Top 9 1/2 Books in a Hacker's Bookshelf”. Truy cập ngày 23 tháng 10 năm 2010.

Liên kết ngoài sửa