it's terribly time-consuming and difficult since only perl can parse Perl
cperl-mode comes darn close. I've seen it fooled a
couple of times, but it's very rare. Almost all of
the Obfuscated Perl Competition winners are correctly
syntax-highlighted by cperl-mode, and excepting some
disagreement between it and me about the correct
indentation of lines that start with the catenation
operator (I want subsequent ones to line up, and it
indents each one further than the previous),
automatically indented as well.
cperl-mode, for those who don't know, is written
in lisp, of course, and comes with Emacs.