not exactly the paradigm shift I need, but a tidy shave.
#!perl
sub f{s/.//;my($e,$o,$i)=split/($&)/,pop;$e&&f($e);$i&&f($i);print$o}$_=pop;f pop;print$/
|
#!perl
sub f{my$n=pop||return;s/.//;my($e,$o,$i)=split/($&)/,$n;f($e);f($i);print$o}$_=pop;f pop;print$/
|
#!perl
sub f{my$n=pop||return;s/(.)//;my($e,$o,$i)=split/($1)/,$n;f($e);f($i);print$o}$_=pop;f pop;print$/
|
#!perl
sub f{my$n=pop||return;s/(.)//;my($e,$o,$i)=split/($1)/,$n;f($e);f($i);print$o}$_=pop;f@ARGV;print$/
|
#!perl
sub f{my$n=pop||return;s/(.)//;my($e,$o,$i)=split/($1)/,$n;f($e);f($i);print$o;}$_=pop;f@ARGV;print$/
|
#!perl
sub f{my($r,$n)=@_;$n||return$r;$r=~s/(.)//;my($o)=$1;my($e,$i)=split/$o/,$n;$r=f(f($r,$e),$i);print$o;$r}f@ARGV;print$/
|