Parse::RecDescent builds up the grammer based on strings that you passed to it. So split out what you want common to both parses ('expression', 'expressionlist') into one string, and put the parser-specific parts into a second and third strings. Then use the magic of concatenation and generate your parses from the common and specific parts.
Dr. Michael K. Neylon - mneylon-pm@masemware.com
||
"You've left the lens cap of your mind on again, Pinky" - The Brain