Pythonでインタプリタを作る コンピュータ言語を設計・実装してインタプリタの動作を理解しよう

· インプレスR&D
Ebook
148
Pages

About this ebook

本書は流行のPythonを用いてコンピュータをコントロールするインタプリタを作る方法についてやさしく、詳しく解説します。
コンピュータ言語の設計者はいったいどうやって言語を作ったのでしょうか。それに対する答えがこの本です。
本書ではコンパイラの世界では有名なlex(字句解析プログラムのソースを作るプログラム)など、他のライブラリには一切頼りません(使うのはPythonの標準的なライブラリのみ)。フルスクラッチで、つまり読者の力のみで、読者の書いたプログラム通りにコンピュータを動かすシステムを作ります。本書に沿って、説明を読み、実際にコードを入力しては実行して動作を確認、ということを繰り返してゆけば最後には小規模ですが確実に動く、自分で動作の理屈が分かっているインタプリタが完成します。
特別のライブラリを使うわけでもなくPython で普通にコーディングしているだけなので、できあがったインタプリタ(新しい言語)は実行速度という点ではあまり期待できません。しかし、今や多くの人がPython を使いますし、そのPython で「インタプリタをどうやって作るのか」理解できるのだと考えれば本書の意義は大いにあるでしょう。またC++など高速なコンパイラを使える読者ならば、本書で得た知識があれば高速なインタプリタを作ることができるでしょう。
【目次】
第1章 はじめに
第2章 Inutobaインタプリタの仕様と実行の流れ
第3章 字句解析
第4章 中間コード
第5章 変数、数値、文字列の登録
第6章 関数の登録
第7章 式の評価
第8章 構文エラーのチェック
第9章 制御文
第10章 プログラムの実行
第11章 関数の呼び出し
第12章 組み込み関数
第13章 機能の拡張の方針
第14章 Inutobaインタプリタ 全ソースプログラム

About the author

吉田 節(よしだ たかし)
2019年度、県立高校を退職、現在県立高校の非常勤講師。担当教科は数学。学生時代から現在に至るまで、プログラミングを趣味としている。
ブログ『いぬおさんのおもしろ数学実験室』を開設している。
3Dシューティングゲーム作成時はダウンロード数6万以上を記録。オンラインソフト紹介サイト、窓の杜でも「News」として取り上げられている。

Reading information

Smartphones and tablets
Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.
Laptops and computers
You can listen to audiobooks purchased on Google Play using your computer's web browser.
eReaders and other devices
To read on e-ink devices like Kobo eReaders, you'll need to download a file and transfer it to your device. Follow the detailed Help Center instructions to transfer the files to supported eReaders.