注目★★★★★Hacker News
Python で Lisp インタプリタを作る——Scheme をゼロから実装するチュートリアル
30秒で把握
- 1Norvig が Python 3 で Scheme インタプリタ Lispy を実装するチュートリアルを公開
- 2Scheme は予約語 5・構文形式 8 と最小設計で言語処理系の本質を学ぶのに適している
- 3電卓サブセットから始める段階的構成で、インタプリタ入門として読み通しやすい
要約
Peter Norvig が 2010 年に公開した、Python 3 で Scheme サブセットのインタプリタ「Lispy (lis.py)」を実装するチュートリアルだ。Scheme は予約語 5・構文形式 8 つと極めてシンプルで、Python の 33 予約語・110 構文形式、Java の 50 予約語・133 構文形式と対照的な設計思想を持つ。まず電卓相当の「Lispy Calculator」から始め、変数定義・条件分岐・手続き呼び出しを段階的に追加しながらインタプリタの内部構造を解説する。言語処理系の仕組みを最小限のコードで理解するための実践的な入門教材として位置づけられている。
あなたへの影響
「コンパイラの仕組みを知らない者はコンピュータの仕組みを知らない」という動機で書かれた本記事は、インタプリタ・コンパイラの基礎を学びたいエンジニアにとって取り組みやすい出発点となる。
推奨:即時の業務対応には不要だが、DSL 設計やメタプログラミングに関心があれば通読する価値がある。