前に来なければならないと考えられる。試みられる前にマッチしなければならないパターンである。この既定値は任意のプロダクションで再設定できる。Parse::RecDescent.変数$Parse::RecDescent::skipは全般的な前置子を保持する。全終端記号に対する照合のデフォルトはこの前置子になる。ディレクティブを利用して変更することができる(後述箇所を参考)。below).アクションはPerlコードのブロックである。属する固有の名前空間内で実行される。Actions)"も参照)。評価した場合)、成功したと考えられる。activated:最後に評価された値がundefの場合、アクションは失敗に終わる。した弾みで驚くほど簡単に起こる。プロダクションを失敗させる劇的なケースである。is:もし$debuggingが偽であるなら、ブロック内のステートメントは実行されない。その結果、最終的な値はundefとなり、プロダクション全体が失敗する。空間を使って利用できる(他にもアクセス可能な変数はある。いじくりまわすとパーサを壊してしまいかねない。参照するのを回避しておけば、万事うまくいくであろう)。(サブ規則、トークン、アクション)に関連付けられた値を保持する。ものとしてはyaccの文法内における$1、$2等があげられよう。現在の地点より前のアイテムの値を含むだけである。matched.最初の要素($item[0])はマッチした現在の規則名を保持する。parse:@itemは標準的なPerlの配列なので、負の数もインデックスに利用できる。保持される(もしあれば反復指定子も含む)。$item[0]と同じ値ということ)。アイテムの位置が変わってしまうのを追いかけなくて済むという所にある。アクションを滅茶苦茶にしてしまいかねない。エントリーは、そのような挿入による影響を受けない。最後の値を記録するだけなのである。いるエントリーを上書きしてしまう。lists)"を参照)。プロダクションが最終的にマッチに成功すれば、その値が返される。成功した場合に何が返されるのかを教えるだけである。それゆえ、$returnはyacc文法における$$に似ているといえよう。(Directives)"を参照)。(Directives)"を参照)。facility:残っている(パースされていない)テキスト。失敗したプロダクションの外にまで伝播しない。プロダクションでは残る。変更することが可能である。line).$thislineは現在パースしているテキストの行番号(1から始まる)を保持する。(これは各行の終端で$thislineと異なるだろう)。その変数の値が使われたときにだけ行番号を再計算している。calculations.$thislineへの代入は行番号計算機を調整する。行番号は代入された値であると信じる。反映されることに注意すること。行番号計算のメカニズムが混乱する。