> The problem with Perl, IMO, is that there are too many clever ideas
Perl's learning curve is shallow (easy to pick up) but long (the language is big).
One explicit design goal from perl which isn't talked about much is "huffman coding" in the language. i.e. frequently needed language features should require fewer keystrokes.
This comes directly from Larry's background as a linguist. For example, English has the word "it" to mean "the thing we're talking about". Perl has "$_" to mean the same thing.
The meaning of "it" is dependent on the surrounding context. So it is with perl.
Similarly, it can be confusing to have long, runaway sentences using such context dependent words. You can write bad English and bad perl in this way if you're not careful.
However, the benefit is that, used correctly, it allows you to express yourself clearly and concisely.
Perl's learning curve is shallow (easy to pick up) but long (the language is big).
One explicit design goal from perl which isn't talked about much is "huffman coding" in the language. i.e. frequently needed language features should require fewer keystrokes.
This comes directly from Larry's background as a linguist. For example, English has the word "it" to mean "the thing we're talking about". Perl has "$_" to mean the same thing.
The meaning of "it" is dependent on the surrounding context. So it is with perl.
Similarly, it can be confusing to have long, runaway sentences using such context dependent words. You can write bad English and bad perl in this way if you're not careful.
However, the benefit is that, used correctly, it allows you to express yourself clearly and concisely.