3 điểm bởi GN⁺ 2023-12-11 | 1 bình luận | Chia sẻ qua WhatsApp

Phát hành sách nhập môn về việc tạo trình biên dịch

  • Nghiên cứu mã nguồn của một trình biên dịch tự lưu trữ, bao gồm toàn bộ mã thuộc phạm vi công cộng.
  • Ngôn ngữ T3X/0 bắt nguồn từ Pascal và BCPL, rất đơn giản.
  • Kèm theo sách hướng dẫn dài 20 trang, yêu cầu kiến thức cơ bản về các ngôn ngữ lập trình thủ tục như C hoặc Pascal và ngôn ngữ hợp ngữ CPU Z80.

Giải thích chi tiết về việc tạo trình biên dịch

  • Giải thích kỹ lưỡng thông qua các sơ đồ, bảng biểu và ví dụ chi tiết.
  • Bao gồm các chủ đề như phân tích từ vựng, phân tích cú pháp, sinh mã và tối ưu hóa đơn giản.
  • Cũng có phần giải thích về giao diện BDOS và thư viện thời gian chạy.

Ý kiến của GN⁺

  • Cuốn sách này cung cấp các giải thích và ví dụ chi tiết để giúp hiểu tổng quan về việc tạo trình biên dịch.
  • Nó mang lại góc nhìn sâu sắc về cấu trúc cơ bản của ngôn ngữ lập trình và quá trình biên dịch, đặc biệt hấp dẫn với các kỹ sư phần mềm mới vào nghề quan tâm đến máy tính đời cũ và lập trình mức thấp.
  • Có thể học qua mã nguồn thực tế, nên rất hữu ích để tiếp thu kỹ thuật xây dựng trình biên dịch trong thực hành chứ không chỉ ở lý thuyết.

1 bình luận

 
GN⁺ 2023-12-11
Ý kiến trên Hacker News
  • Tin về việc xuất bản một cuốn sách mới về trình biên dịch

    • Một cuốn sách mới về trình biên dịch đã được phát hành. Đây là bản mở rộng của "Write Your Own Compiler" trước đó, thảo luận về việc sinh mã trên Z80 của hệ thống CP/M.
    • Khám phá độ phức tạp của một trình biên dịch có thể tự biên dịch trong vòng 10 phút trên hệ thống Z80 4MHz.
    • Mã nguồn được cung cấp miễn phí nhưng sách thì có phí.
  • Chia sẻ kinh nghiệm phát triển trình biên dịch C đa lượt và assembler

    • Đã tạo một trình biên dịch C đa lượt và assembler viết bằng TypeScript cho các CPU x86 đời cũ.
    • Có thể xem dự án đó trên GitHub.
  • Kỳ vọng vào một cuốn sách về tối ưu hóa CPU và GPU hiện đại

    • Cuốn sách trông khá thú vị, nhưng vẫn đang chờ một hậu bản của The Dragon Book bàn về tối ưu hóa CPU và GPU hiện đại, cũng như thiết kế và xây dựng VM hiện đại với GC đồng thời tốc độ cao.
  • Gợi ý về việc xây dựng trình biên dịch thực dụng

    • Có sở hữu bản sách in của "Practical Compiler Construction 2nd Ed." và khuyến nghị cho những ai quan tâm.
  • Đề xuất cải thiện tính nhất quán trong nội dung sách

    • Đã đọc chương miễn phí và nhận thấy có những phần có thể khó với người mới bắt đầu.
    • Sau khi giải thích các khái niệm cơ bản như ngữ pháp của ngôn ngữ, sách lại chuyển ngay sang các chủ đề nâng cao, khiến cảm giác thiếu nhất quán.
    • Đề xuất cải thiện điểm này trong tác phẩm tiếp theo.
  • Lo ngại về việc cần học ngôn ngữ lập trình mới T3X

    • Cuốn sách có vẻ thú vị, nhưng để tự viết và phát triển một trình biên dịch từ đầu trên hệ thống CP/M, người đọc phải học một ngôn ngữ lập trình mới tên là T3X.
  • Quan tâm đến một cuốn sách về cách viết hệ điều hành như CP/M

    • Bày tỏ sự quan tâm đến một cuốn sách hướng dẫn cách tự viết một hệ điều hành như CP/M.
  • Câu hỏi về lý do tập trung vào retro computing

    • Tò mò vì sao lại tập trung vào retro computing.
    • Đặt câu hỏi liệu có phải vì các mục tiêu retro đơn giản hơn và dễ hiểu hơn để có thể học dần theo từng lớp, hay vì tác giả quen thuộc hơn với lĩnh vực retro nên có thể viết một cuốn sách tốt hơn.