Go言語でつくるインタプリタ

個数:

Go言語でつくるインタプリタ

  • ウェブストアに1冊在庫がございます。(2024年03月19日 14時27分現在)
    通常、ご注文翌日~2日後に出荷されます。
  • 出荷予定日とご注意事項
    ※上記を必ずご確認ください

    【ご注意事項】 ※必ずお読みください
    ◆在庫数は刻々と変動しており、ご注文手続き中に減ることもございます。
    ◆在庫数以上の数量をご注文の場合には、超過した分はお取り寄せとなり日数がかかります。入手できないこともございます。
    ◆事情により出荷が遅れる場合がございます。
    ◆お届け日のご指定は承っておりません。
    ◆「帯」はお付けできない場合がございます。
    ◆画像の表紙や帯等は実物とは異なる場合があります。
    ◆特に表記のない限り特典はありません。
    ◆別冊解答などの付属品はお付けできない場合がございます。
  • ●店舗受取サービス(送料無料)もご利用いただけます。
    ご注文ステップ「お届け先情報設定」にてお受け取り店をご指定ください。尚、受取店舗限定の特典はお付けできません。詳細はこちら
  • サイズ B5変判/ページ数 296p/高さ 24cm
  • 商品コード 9784873118222
  • NDC分類 007.64
  • Cコード C3055

出版社内容情報

Go言語を使って架空のプログラミング言語のインタプリタを作りながら言語の作り方とコンピュータの内部の動作を学ぶ書籍。Go言語を使って架空のプログラミング言語のインタプリタを作ることで言語の作り方やコンピュータの仕組みを学ぶ !
Go言語を使って架空のプログラミング言語のインタプリタを作りながら言語の作り方とコンピュータの内部の動作を学ぶ書籍です。300ページ弱の分量で、インタプリタがどのように作られているのかを実際に言語を作りながら学ぶことができるます。

Thorsten Ball[トシュテン ボール]
著・文・その他

設樂洋爾[シダラ ヨウジ]
翻訳

内容説明

本書は、Go言語でプログラミング言語のインタプリタを作りながら、プログラミング言語とそのインタプリタについて学ぶ書籍です。順を追ってコードを示し、C言語風の構文を持つ言語「Monkeyプログラミング言語」のインタプリタを組み立てていきます。字句解析器、構文解析器、評価器を作りながら、ソースコードをトークン列に、トークン列を抽象構文木に変換し、その抽象構文木を評価し実行する方法を学びます。さらに、インタプリタに新しいデータ型を導入し、組み込み関数を追加して、言語を拡張していきます。付録では構文マクロシステムについても扱います。本書では、Go言語標準のツールキット以外のサードパーティライブラリやフレームワークは使用せず、0行のコードからはじめて、完動するインタプリタができあがるところまでを体験します。その過程を通じて、プログラミング言語とインタプリタの仕組みを実践的に学ぶことができます。

目次

1章 字句解析(字句解析;トークンを定義する ほか)
2章 構文解析(構文解析器(パーサー)
パーサージェネレータじゃないの? ほか)
3章 評価(シンボルに意味を与える;評価の戦略 ほか)
4章 インタプリタの拡張(データ型と関数;文字列 ほか)
付録 マクロシステム(マクロシステム;Monkeyのためのマクロシステム ほか)

著者等紹介

ボール,トシュテン[ボール,トシュテン] [Ball,Thorsten]
ドイツ在住のプログラマ。プロフェショナルのソフトウェア開発者として、ウェブ技術に携わる。これまでRuby、JavaScript、Go、それにCで書いたソフトウェアも実戦投入している

設樂洋爾[シダラヨウジ]
1979年北海道札幌市生まれ。札幌育ち。2009年、北海道大学大学院情報科学研究科コンピュータサイエンス専攻博士後期課程を修了。同年、株式会社えにしテックを設立(本データはこの書籍が刊行された当時に掲載されていたものです)
※書籍に掲載されている著者及び編者、訳者、監修者、イラストレーターなどの紹介情報です。

感想・レビュー

※以下の感想・レビューは、株式会社ブックウォーカーの提供する「読書メーター」によるものです。

Masahiro Oono

5
これまでも自分で小さなインタプリタを書いてみようとしたことはあったが、字句解析止まりで「で、次どうすんの?」と詰んでしまっていたところ、本書のp75-85のPratt構文解析の仕組みの説明が非常に分かりやすく興味深く読むことができた(それでも該当ページを3回は読み直した)。今、別の資料を読んで(C言語でインタプリタを書いてみて)いるが、コードを読み解く上で本書の内容が確実に活きていると感じている。後年振り返ったとき、言語自作の心理的な壁を崩してくれた意味で、自分にとって良書だと呼べる本かもしれない。2021/04/04

HANA

5
タイトル通り。Go言語の説明は一切なくひたすらインタプリタの実装を続ける内容。やるなら最低限ゴルーチン以外は知っておく必要がある気がする。インタプリタの作り方が少しずつ分かってくる感覚はなんか楽しい。SICPの影響を受けているような感じだったので読んだ後か一緒に読むと理解が深まると思う。2018/12/03

ほしみ

4
いい本だったが Go の文法に慣れていないと最初戸惑う。「インタプリタ書ける人ってかっこいい」から「インタプリタっていっても結局ホスト言語機能におんぶにだっこやんけ!」という状態まで成長できた。 次はコンパイラが書きたいなと思っていたら著者が続編(Writing A compiler in Go)を出しているようで、次はこれを読もうと思う: https://compilerbook.com/2019/06/09

momotaro98

1
処理系作りの基礎が学べました。写経しながら楽しくできました。TDD形式で進むので自分でも少々頭を使いながらやれました。Go言語の特徴をたっぷり使っているとかでは無かったです。C言語やRustなどに置き換えても本書のmonkey言語は実装可能です。ただGoのガベージコレクションをそのまま利用していて、あくまでもレキサー、パーサ、エバリュエータの基礎の部分にフォーカスしています。パーサの2章が1番面白かったです。2020/06/26

Yuki Sumida

1
Goは少し文法知ってるくらいの知識で2ヶ月くらいかけて写経しました。 全部理解できたとは言えないけど、だんだん言語っぽく進化していくのがとても楽しかったです。 2018/10/01

外部のウェブサイトに移動します

よろしければ下記URLをクリックしてください。

https://bookmeter.com/books/12893353
  • ご注意事項

    ご注意
    リンク先のウェブサイトは、株式会社ブックウォーカーの提供する「読書メーター」のページで、紀伊國屋書店のウェブサイトではなく、紀伊國屋書店の管理下にはないものです。
    この告知で掲載しているウェブサイトのアドレスについては、当ページ作成時点のものです。ウェブサイトのアドレスについては廃止や変更されることがあります。
    最新のアドレスについては、お客様ご自身でご確認ください。
    リンク先のウェブサイトについては、「株式会社ブックウォーカー」にご確認ください。