Please bear with me when I say that feel like Perl is much harder to learn than Pascal, C, and C++ (my other languages). Everything in those languages is very clear-cut and plainly specified, and a fairly complete understanding of them is achievable, and necessary, for any competent programmer.

Perl, on the other hand, is so complex and subtle that to truly understand how the language works, you have to study a book like <cite>Advanced Perl Programming</cite>. How many Perl programmers actually reach that level? Learning Perl is a lot like growing up. As you get more and more sophisticated, the grown-ups give you more and more complicated explanations of how the world works.

You can imagine plotting every language as a point in a quarter-plane, where the x-axis indicates how difficult it is to understand the language, and the y-axis indicates how productive you can be without understanding it. (You have to imagine a different graph for every meaning of the word "understand.") Perl would be very, very far from the origin, and C would be very close to the origin.

My current understanding of Perl is filled with holes, comforting lies fed me by the Perl grown-ups, and things that I've simply made up -- yet I can write complex programs from scratch. This would not be possible in any other language that I've seen.

It also explains why I'm writing big, useful, complex programs in Perl and at the same time feeling like a complete beginner. In Perl, I haven't yet gotten past the feeling that at any time my code might wander into the dark area where my current understanding will deceive me. Judging by my productivity, though, rather than by my gut feeling, Perl wins for ease-of-learning by a mile. That's the bottom line.


In reply to Re: What is it about perl that makes perl so cool? by Anonymous Monk
in thread What is it about perl that makes perl so cool? by zigster

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.