You perhaps don't notice this, but the Perl 5 grammar is constantly evolving. There is no One True Perl 5 Grammar. From 5.8.0 to today's bleadperl, I count 50 changes to toke.c and perly.y -- vstrings, defined-or operator, stack overflow fixes, utf8 barewords, scoping changes, weird constructs in double-quoted strings, behaviour of '=>', etc. All changes in hope of improving its dwimmery.