Is Python or Ruby better/worse than Perl? or advantages of each Language?

Apocalyptically bad languages rarely (though not never) get much traction. Spectacularly awesome languages usually (though not always) wind up being used.

Most languages fall between the extremes. What determines their adoption winds up being a large pile of factors, but almost none of them can possibly be distilled down to "language is better/worse". Most deciding factors, really, can be succinctly, not-really-fairly, and totally-uninformatively lumped under "luck". And without contradicting those negative adverbs, also be not really untrue.

There's nothing Ruby can do that Perl can't. There's nothing Python can do that Ruby can't. There's nothing Perl can do that Python can't. Even aside from the (also not untrue, but still silly) argument of "they're all Turing-complete", they're all "dynamic" and "interpreted" and "scripting" and other fuzzy-but-still-useful subdivisions of the landscape.

What they are is different. They have different language structures, they have different community structures, they have different tendancies, they have different biases. They invite you to model problems and decompose processes differently, to express yourself to the compiler and to other programmers differently. You're not going to get a good description of those differences from anybody except somebody well-versed in all of them (which I'm not). And in fact, you really can't get it from anybody else either, since what will matter is how you relate to them, which is only partially determined by the language itself. It also varies depending on you (and for that matter, you-today aren't the same as you-5-years-from-now, so it's not even time-invariant).

Do you (/your team) know one better than the others? Then that's the right choice. Do you have an existing codebase in one? Then that's the right choice. Does one have an excellent set of existing libraries for your problemspace? Then that's the right choice. Does one sound more interesting to explore, even (especially?) not knowing it, and you have the resources available to indulge? Then that's the right choice. Do you not care about any of that, and just want to pick the one that'll get you the most/best paying jobs? Then count up job listings and pick that one (and hope you project right for the appropriate future term).

Do none of those apply, or provide definitive answers? Well, then obviously Perl is the right choice 8-}


In reply to Re: Honest question about Perl, Python and Ruby by fullermd
in thread Honest question about Perl, Python and Ruby by madM

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.