Ugly programs are like ugly suspension bridges: they're much more liable to collapse than pretty ones, because the way humans (especially engineer-humans) perceive beauty is intimately related to our ability to process and understand complexity. A language that makes it hard to write elegant code makes it hard to write good code.
I agree with ESR; Perl has its uses for quick file parsing jobs, but isn't really suited to large programming tasks (especially when there are better languages). Python is currently my favourite language for day-to-day use. I've looked at Ruby briefly, and it looks possibly more elegant than Python (some of the OO syntax reminds me of SuperCollider on the Mac), though isn't yet quite as mature as Python.