- トップ
- コンピュータサイエンス
- Go言語でつくるインタプリタ
Go言語でつくるインタプリタ
Thorsten Ball, 設樂 洋爾オライリー・ジャパン316ページISBN 9784873118222
コンピュータサイエンスタグで同率15位(64冊中)。Zenn・Qiitaなどの2記事で紹介(時点)。
- 紹介記事
- 2件
- 媒体別
- Qiita 1・企業テックブログ 1
- 初めての紹介
- 最新の紹介
この本を選ぶ前に
- 出版年
- (約8年前)
- タグ内の順位
- コンピュータサイエンスタグで同率15位(64冊中・紹介記事数の順)
紹介している記事(2件)
記事ごとの説明は、記事本文のうちこの本に触れた部分をAIが要約したもので、筆者の原文ではありません。
- GWに読みたい!コロプラのサーバーエンジニアがおすすめする技術書14選 企業テックブログ · コロプラ ·
A Tour of Goの後に、Goで何かプログラムを書いてみたくて手に取った本。JS風言語Monkeyのインタプリタを字句解析器、構文解析器、評価器とボトムアップで作っていき、実際に動くのでモチベーションを保ちやすいという。TDDで進むためGoのテストの書き方も参考になったとしている。
- 新人プログラマの方におすすめしたい技術書5選 Qiita · Syuparn · · いいね 70
1冊を通じてオリジナルのプログラミング言語を一から作る方法を扱う本として紹介している。写経を通じてGo言語を覚え、プログラミング言語の動作原理を学び、テスト駆動開発(TDD)も知ったと述べ、三つを得られた点を「一石三鳥」と評価している。通読には約3週間かかり、学生時代の夏休みに読んだ経験から、長期休暇など時間のあるときに取り組むことを勧めている。
この本について
GoでMonkeyというC言語風のプログラミング言語を実行するインタプリタを、一から組み立てる本である。ソースコードをトークンに分ける字句解析器、トークン列から抽象構文木を作る構文解析器、その木を評価して実行する評価器を順に実装する。式や演算子の優先順位、変数の束縛と環境、関数と呼び出し、条件分岐、エラー処理を扱い、整数・真偽値・nullに加えて、文字列、配列、ハッシュと組み込み関数を言語に導入する。REPLも段階的に構築し、最後に付録でquoteとunquoteを使う構文マクロの定義・展開を実装する。Goの標準ツールキットを使い、外部ライブラリやフレームワークに頼らず、動作するインタプリタまで作る過程を通して、プログラミング言語とインタプリタの仕組みを学ぶ。
出版社の内容紹介・目次と紹介記事をもとにAIが要約したものです。原文の転載ではありません。
目次(主な章)
出典: 出版社の書籍ページ (章の見出しのみ)
- 1章 字句解析
- 2章 構文解析
- 3章 評価
- 4章 インタプリタの拡張
- 付録 マクロシステム