Writing An Interpreter In Go (用 Go 寫一個解釋器)

Thorsten Ball

  • 出版商: Thorsten Ball
  • 出版日期: 2018-08-07
  • 售價: $1,800
  • 貴賓價: 9.8$1,764
  • 語言: 英文
  • 頁數: 265
  • 裝訂: Paperback
  • ISBN: 3982016118
  • ISBN-13: 9783982016115
  • 相關分類: Go 程式語言
  • 相關翻譯: 用 Go語言自製解釋器 (簡中版)
  • 立即出貨(限量) (庫存=1)

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

相關主題

商品描述

Writing An Interpreter In Go - Version 1.5 - Find out more at https://interpreterbook.com

In this book we will create a programming language together. We'll start with 0 lines of code and end up with a fully working interpreter for the Monkey programming language.

Step by step. From tokens to output. All code shown and included. Fully tested.

Buy this book to learn:

- How to build an interpreter for a C-like programming language from scratch
- What a lexer, a parser and an Abstract Syntax Tree (AST) are and how to build your own
- What closures are and how and why they work
- What the Pratt parsing technique and a recursive descent parser is
- What others talk about when they talk about built-in data structures
- What REPL stands for and how to build one

Why this book?

This is the book I wanted to have a year ago. This is the book I couldn't find. I wrote this book for you and me. So why should you buy it? What's different about it, compared to other interpreter or compiler literature?

- Working code is the focus. Code is not just found in the appendix. Code is the main focus of this book.
- It's small! It has around 200 pages of which a great deal are readable, syntax-highlighted, working code.
- The code presented in the book is easy to understand, easy to extend, easy to maintain.
- No 3rd party libraries! You're not left wondering: "But how does tool X do that?" We won't use a tool X. We only use the Go standard library and write everything ourselves.
- Tests! The interpreter we build in the book is fully tested! Sometimes in TDD style, sometimes with the tests written after. You can easily run the tests to experiment with the interpreter and make changes.

This book is for you if you...

- learn by building, love to look under the hood
- love programming and to program for the sake of learning and joy!
- are interested in how your favorite, interpreted programming language works
- never took a compiler course in college
- want to get started with interpreters or compilers…
- ... but don't want to work through a theory-heavy, 800 pages, 4 pounds compiler book as a beginner
- kept screaming "show me the code!" when reading about interpreters and compilers
- always wanted to say: "Holy shit, I built a programming language!"

商品描述(中文翻譯)

《使用 Go 撰寫解譯器 - 1.5 版本》- 更多資訊請參閱 https://interpreterbook.com

在這本書中,我們將一起創建一個程式語言。我們將從零行程式碼開始,最終擁有一個完整運作的 Monkey 程式語言解譯器。

逐步進行。從 tokens 到輸出。所有程式碼都會展示並包含其中。完全經過測試。

購買這本書可以學到以下內容:

- 如何從頭開始建立一個類似 C 的程式語言解譯器
- 什麼是 lexer、parser 和抽象語法樹(AST),以及如何建立自己的解譯器
- 什麼是閉包,以及它們如何運作和為何運作
- 什麼是 Pratt 解析技術和遞迴下降解析器
- 當他們談論內建資料結構時,他們在談論什麼
- REPL 代表什麼,以及如何建立一個

為什麼選擇這本書?

這是我一年前想要擁有的書。這是我找不到的書。我為你和我寫了這本書。那麼你為什麼應該購買它?相較於其他解譯器或編譯器文獻,它有什麼不同之處?

- 重點在於可運作的程式碼。程式碼不僅僅出現在附錄中,它是本書的主要重點。
- 這本書很小!大約有 200 頁,其中有很多易讀、語法突出且可運作的程式碼。
- 本書中呈現的程式碼易於理解、擴展和維護。
- 沒有第三方庫!你不會疑惑:“但是工具 X 如何做到這一點?”我們不會使用工具 X。我們只使用 Go 標準庫並自己編寫所有程式碼。
- 測試!本書中建立的解譯器已經經過全面測試!有時是以測試驅動開發的方式,有時是在編寫測試之後。你可以輕鬆運行測試來實驗解譯器並進行更改。

如果你符合以下條件,這本書適合你:

- 通過建立學習,喜歡深入了解內部運作
- 熱愛程式設計並以學習和樂趣為目的進行編程
- 對你最喜歡的解譯程式語言的運作方式感興趣
- 從未在大學修過編譯器課程
- 想要開始使用解譯器或編譯器...
- ...但不想作為初學者閱讀一本理論繁重、800頁、4磅的編譯器書籍
- 在閱讀有關解譯器和編譯器的文章時,一直大喊:“給我看程式碼!”
- 總是想說:“天啊,我建立了一個程式語言!”

作者簡介

Thorsten Ball

Thorsten Ball is a professional software developer and writer.

His writing is a result of his love for what he calls "recreational programming", where he digs deep into various topics, hoping to come out the other end with a better understanding of what it is that we do when we program. For the last few years, the two topics that kept his attention the most are systems programming and programming languages.

He's also interested in the other side of doing professional software development: software engineering in a team, communicating through code, team and company culture and how to write great code together.

This fascination with programming and what it means to develop software, turned into his two books and various blog posts, podcast appearances and talks.

作者簡介(中文翻譯)

Thorsten Ball

Thorsten Ball是一位專業的軟體開發者和作家。

他的寫作是他對所謂的「娛樂性編程」的熱愛的結果,他深入研究各種主題,希望能夠更好地理解我們在編程時所做的事情。在過去幾年中,他最關注的兩個主題是系統編程和編程語言。

他還對從事專業軟體開發的另一面感興趣:團隊中的軟體工程、通過代碼進行溝通、團隊和公司文化以及如何一起編寫優秀的代碼。

對編程和開發軟體的意義的著迷,讓他寫了兩本書,並發表了各種博客文章、播客節目和演講。