19. Python コンパイラパッケージ

Python compiler パッケージは Python のソースコードを分析したり Python バイトコードを生成するためのツールです。compiler は Python のソースコードから抽象的な構文木を生成し、その構文木から Python バイトコードを生成するライブラリをそなえています。

compiler パッケージは、Python で書かれた Python ソースコードからバイトコードへの変換プログラムです。 これは組み込みの構文解析器をつかい、そこで得られた 具体的な構文木に対して標準的な parser モジュールを使用します。 この構文木から抽象構文木 AST (Abstract Syntax Tree) が生成され、 その後 Python バイトコードが得られます。

このパッケージの機能は、Python インタプリタに内蔵されている 組み込みのコンパイラがすべて含んでいるものです。これはその機能と 正確に同じものになるよう意図してつくられています。なぜ同じことをする コンパイラをもうひとつ作る必要があるのでしょうか? このパッケージは いろいろな目的に使うことができるからです。これは組み込みのコンパイラよりも 簡単に変更できますし、これが生成する AST は Python ソースコードを 解析するのに有用です。

この章では compiler パッケージのいろいろなコンポーネントが どのように動作するのかを説明します。そのため説明はリファレンスマニュアル的なものと、 チュートリアル的な要素がまざったものになっています。

以下のモジュールは compiler パッケージの一部です:

compiler  
compiler.ast  
compiler.visitor  

ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。