Essentials of Compilation: An Incremental Approach in Python (Hardcover)

Siek, Jeremy G.

  • 出版商: Summit Valley Press
  • 出版日期: 2023-08-01
  • 售價: $1,800
  • 貴賓價: 9.5$1,710
  • 語言: 英文
  • 頁數: 232
  • 裝訂: Hardcover - also called cloth, retail trade, or trade
  • ISBN: 0262048248
  • ISBN-13: 9780262048248
  • 相關分類: Python程式語言
  • 立即出貨(限量) (庫存=1)

買這商品的人也買了...

商品描述

A hands-on approach to understanding and building compilers using the programming language Python.

Compilers are notoriously difficult programs to teach and understand. Most books about compilers dedicate one chapter to each progressive stage, a structure that hides how language features motivate design choices. By contrast, this innovative textbook provides an incremental approach that allows students to write every single line of code themselves. Jeremy Siek guides the reader in constructing their own compiler in the powerful object-oriented programming language Python, adding complex language features as the book progresses. Essentials of Compilation explains the essential concepts, algorithms, and data structures that underlie modern compilers and lays the groundwork for future study of advanced topics. Already in wide use by students and professionals alike, this rigorous but accessible book invites readers to learn by doing.

 

  • Deconstructs the challenge of compiler construction into bite-sized pieces
  • Enhances learning by connecting language features to compiler design choices
  • Develops understanding of how programs are mapped onto computer hardware
  • Classroom-tested, hands-on approach suitable for students and professionals
  • Extensive ancillary resources include source code and solutions

商品描述(中文翻譯)

一本以實踐為基礎的書籍,使用Python程式語言來理解和建構編譯器。

編譯器一直以來都是難以教授和理解的程式。大多數關於編譯器的書籍都將每個進階階段都獨立成一章,這種結構隱藏了語言特性如何影響設計選擇。相比之下,這本創新的教科書提供了一種漸進的方法,讓學生們自己編寫每一行程式碼。Jeremy Siek指導讀者使用功能強大的物件導向程式語言Python構建他們自己的編譯器,並在書中逐步添加複雜的語言特性。《編譯的基本原理》解釋了現代編譯器的基本概念、演算法和資料結構,為未來學習高級主題奠定了基礎。這本嚴謹但易於理解的書籍已被學生和專業人士廣泛使用,並邀請讀者通過實踐來學習。

- 將編譯器構建的挑戰拆解成易於理解的部分
- 通過將語言特性與編譯器設計選擇相連接來增強學習效果
- 發展對程式如何映射到計算機硬體的理解
- 經過課堂測試的實踐方法,適合學生和專業人士
- 廣泛的附加資源包括原始碼和解答

作者簡介

Jeremy G. Siek is Professor of Computer Science at Indiana University and author of Essentials of Compilation: An Incremental Approach in Racket and The Boost Graph Library. He invented gradual typing, a type system that integrates both dynamic and static typing in the same programming language.

作者簡介(中文翻譯)

Jeremy G. Siek 是印第安納大學的計算機科學教授,也是《Essentials of Compilation: An Incremental Approach in Racket》和《The Boost Graph Library》的作者。他發明了漸進式類型系統,這是一種將動態類型和靜態類型結合在同一個程式語言中的類型系統。