PnutsのOn-The-Fly(動的)コンパイラとは、スクリプトを実行する時にJavaのバイトコードをメモリ上に生成して読み込むことで、処理速度を速くするための仕組みです。pnutsコマンドは、デフォルトでOn-The-Flyコンパイラを使います。
一方、AST(Abstract Syntax Tree)インタプリタとは、スクリプトをコンパイルすることなく実行するしくみです。C:\> pnuts Pnuts version 1.0rc2 (04/16/2002), 1.3.1_02 (Sun Microsystems Inc.) Java HotSpot(TM) Client VM (mixed mode) > getContext().getImplementation() pnuts.compiler.CompilerPnutsImpl@df503
ASTインタプリタでも、スクリプトを選択的にコンパイルすることができます。 "パフォーマンス向上のためのヒント" を参照。
On-The-Flyコンパイラを用いる場合、-Oオプションを指定すると、実行速度を優先します。この場合、エラーが起きたときの行番号は表示されません。