So I consider Perl to not be a best choice for occasional use: I always had to re-learn the syntax and decipher my old code - something I didn't have problem with in other languages.To sum it up, Perl is a great language, but requires a lot of dedication like C++ does. So the eternal question still remains - Perl, Ruby or Python? ;-)
Perl is a deep language. No one will argue that's not true. But it is entirely possible to write Perl code in a very Pythonic style, if that's what floats your boat. Perl objects are actually a lot like Python objects. But, if you do that, you're stuck using only the features that Python would give you...which most experienced Perl mongers are unwilling to do. (I'm aware there are a few interesting Python features that Perl lacks, or if not lacks, at least require a slightly more verbose implementation in Perl.)
I learned dynamic language programming with Perl about 10 years ago, and worked in it for a few years. Then I worked in Python predominantly for a while...with some of the best Python developers in the world (if you use Python, you use code daily that a couple of them wrote), and found it a great language. In fact, during those three or four years I decided that Python was a better language than Perl. But, a funny thing happened, I found myself working full-time with Perl again about three years ago...and I decided that I should learn it properly this time rather than banging my way through based on what I could glean from examples of questionable heritage on the web.
It turns out, I was wrong. Perl is a better language (for me) than Python. They're both very fine languages, of course, but there are some things about Perl that really make me happy. Unicode in Perl is so natural it's like magic, for example. Not so in Python, where you have to ask explicitly for Unicode strings--you can actually write Perl code in Unicode, if you're feeling freaky like that. Regexes are first class entities in Perl...a regex can be an object, can be made into a reference, etc. which is incredibly powerful once you're accustomed to it. Backward compatibility is astoundingly good in Perl. We have code that hasn't been touched in 10 years that still runs on Perl 5.10. It may be ugly and old, but it works fine...the cheapest code to maintain is that which requires no maintenance. When I worked in Python, I had to make changes to almost everything between several major revisions: 1.5 to 2.0, in particular, but the 2.x releases also always required minor code changes.
There are a few things I miss from Python, but the "cleanliness" of Python is not among them. Modern Perl is extremely nice to read. What I do miss is a good REPL (though mst's Devel::REPL is coming along nicely, it's still no iPython).
Ruby also seems pretty awesome. I certainly found it very intuitive when I spent a week or so messing with it. But many of the things I really loved came from Perl. I do have to say that it always felt like I wrote fewer bugs into my code when working Ruby than Perl or Python (which always seemed about equal, to me). I dunno why that is, exactly.