One area in which Perl falls behind other languages is in its lack of a usable Read-Evaluate-Print-Loop. (
perl -de 0 just isn’t enough for me.) I’ve used Ruby’s
irb and a handful of Python shells, and I’m starting to become a fan of
ghci, but I fall back on
perl -e far too often for my sanity.
Matt S. Trout, who you may remember from DBIx::Class and the Catalyst Framework, has written an article about Writing a Modern Perl REPL, using good design techniques and, of course, some of the most powerful CPAN modules available.