in reply to Re^4: top ten things every Perl hacker should know
in thread top ten things every Perl hacker should know

I can only assume you're unfamiliar with the term "backronym" — which is what Perl is, rather than a proper acronym.

Just because Larry carefully rebranded perl as an acronym for marketing purposes doesn't make it any less an acronym. We don't know all the internal names the makers of lasers, sonar, or scuba gear pitched before the acronyms were popularlized: yet those words are and remain acronyms.

Ten years ago, perl was being agressively and loudly marketed under the acronym "Practical Extraction and Reporting Language" -- it was a selling point to encourage people to switch from shell scripts, which is largely what perl was written to replace. The fact that early versions of perl didn't have the acronym was a tiny sentence buried deep in man pages as a minor historical footnote.

For well over a decade (at *least* since I first read the perl man pages back in 1994, if not before then), perl was billed, loudly, as an acronym for "Practial Extraction and Reporting Language": now that it's associations with shell scripting are no longer considered cool, Larry is trying to flip-flop back to the old name. That part is fine, I guess, but claiming that perl is suddenly no longer an acronym is NOT okay.

That's revisionist history, and it's flat out wrong. Perl is still defined as an acronym in the canonical man pages that describe the language, so to claim otherwise is just plain silly.

Perl is a proper name, as are Ruby, Python, Java, Lisp, Prolog

Uh huh. So the concept of Perl gets to be a proper name, but the tangible instantiation doesn't? We don't do that with any other noun in English. I don't drive a "ford taurus", which then deemed to be a specific instantiation of the platonic ideal of a "Ford Taurus". If anything, a proper noun implies a specific instantiation of a more general concept, not the other way around. We name specific children; but we don't consider 'child' a proper noun. Yet perl zealots keep harping on the distinction between the Holy Abstraction of Perl (which is capitalized, presumably as an honourific), and the lowly, bug-ridden instantiation (which apparently doesn't merit one).

We write popular acronyms in lowercase, without the periods: thus "perl", not "P.E.R.L."; just as we do with laser, maser, sonar, or scuba.

For purposes of knowing the proper terms, it helps to know the history of the terms.

And history says that perl stands for "Practical Extraction and Reporting Language"; that the definition was changed very early in the history of perl, and the very first description you got, and still get when you look up the meaning of the language has been, and still remains, an acronym.

  • Comment on Re^5: top ten things every Perl hacker should know

Replies are listed 'Best First'.
Re^6: top ten things every Perl hacker should know
by tilly (Archbishop) on Mar 21, 2006 at 17:47 UTC
    Sorry, but you're wrong.

    In the perl man-page, since Perl 1, it has included both the backronyms Practical Extraction and Report Language and later Pathologically Eclectic Rubbish Lister in the BUGS section. In fact Perl never stood for either, and both backronyms were due to Larry Wall himself, before he ever released his creation on an unsuspecting world.

    Larry doesn't care much about the issue either way. If you find the language useful, then great. If you don't, well OK. But he doesn't care to argue about what you call it.

    It is other people who have made a big issue over this. I'm not sure how it came to be, but knowing this piece of trivia has become essentially a "secret handshake" to identify who has been a part of online Perl communities, and who has not. This is useful enough that I use it that way myself, even though I don't care how you call it.

    As for the fact that Perl gets to be a proper name while the instantiation doesn't, blame Unix. That the Perl executable is called perl is due to Unix convention, and since Unix is case-sensitive, it is very important to capitalize that correctly. The language itself is capitalized because by convention most language names are capitalized. For example we write Python, Visual Basic, Ruby, Lisp (even though that really was an acronym), and so on.

    But note that those languages that have Unix implementations have lower-case executables. Therefore at heart Perl/perl is no more a violation of standard English capitalization rules than Python/python, Ruby/ruby, Sendmail/sendmail, Mozilla/mozilla and many other examples.

Re^6: top ten things every Perl hacker should know
by apotheon (Deacon) on Mar 22, 2006 at 07:56 UTC

    Speaking of Platonic ideals: you seem to have a strange idea about how the English language works. Sure, English actually tends to conform to a (very complex) set of rules, but many of those rules are exceptions to other rules, and even those excepting rules have exceptions much of the time. Thus, your half-baked attempt to retrofit terms that are properly unix jargon to your vision of the Platonic ideal of the English language is not only misguided in its ignorance of subcultural jargon rules but also in its impression of English as being a pure extrapolation from some set of inviolable and unvarying rules. The Ford Taurus is not, in instantiation, called the ford taurus because that's the way the rules of English treat brand names for cars in common parlance, while Perl implementations are called perl in unix systems because that's the way the rules of unix-hacker jargon as a subset of English treat executable binaries.

    I find it ironic that you're trying to argue that Perl is properly perl because of your gymnastic feats in an attempt to contort the term's history to fit your Platonic ideal of the English language, all while violating the rules of English every few sentences in use of very simple, undisputed rules of syntax and grammar such as possessives, sentence structure, punctuation, et cetera. Normally, I don't pick on the spelling, grammar, and other errors of English usage when disagreeing with someone, but since you're claiming everyone but you is wrong about how the English language is used it seems not only fair game but a highly relevant point. How can you instruct the rest of us in the use of the English language and application of its rules when you do not even know them yourself?

    You furthermore contradict yourself, claiming that Perl (or "perl" as you'd have it) was an acronym first, then go on to say that Larry Wall "flip-flopped back to the old name" (emphasis mine), thus effectively conceding the point that it's properly a backronym rather than strictly an acronym.

    While your so-called history of Perl's purpose is essentially irrelevant to the discussion at hand, it's worth noting that Perl was, from day one, apparently far more than merely a replacement for shell scripts. It was a replacement for a great many things, including shell scripts, sed and awk, C for system administration, and probably half a dozen other things besides.

    I recommend Wall's State of the Onion addresses if you want to know more about the early history of Perl. It seems like every one of them gives up some new tidbit of information on his early motivations and decisions.

    EDIT: While it's not really all that big a deal to me, or even most people, how you choose to spell it or why you make that decision, making wildly inaccurate claims about how it really is spelled according to your own hasty generalizations and other logical fallacies just begs for corrections. I don't care if you call it "perl" rather than "Perl", but telling me I'm wrong for calling it "Perl" because the Ford Taurus isn't called a "ford taurus" when it's sitting in my driveway isn't going to convince me you know what you're talking about.

    print substr("Just another Perl hacker", 0, -2);
    - apotheon
    CopyWrite Chad Perrin

      misguided in its ignorance of subcultural jargon rules

      Subcultural jargon is a corruption of the English language: it HAS no rules. It's an exception to the rules.

      Your ad hominem attacks on someone is patently right just underscores the real truth: you're trying to form an elitist group.

      The manual page lists the acronym as a correct usage of perl. You say it's not. You're wrong. The man page is definitive; that's it's purpose.

      You can invent nonsense words like backronyms; you can bitch about my spelling or grammar or other trivialities, but the truth of the matter is you are wrong. You know it, I know it, everyone knows it.

      I'm sick of people like you, who are just looking for a reason to sneer at other people who don't agree to play by stupid rules of an elistist subculture of arrogant twits.

        The manual page lists the acronym as a correct usage of perl. You say it's not. You're wrong. The man page is definitive; that's it's purpose.

        If the man page is definitive, then here's the definitive definition which overrides all others:

        Perl actually stands for Pathologically Eclectic Rubbish Lister, but don't tell anyone I said that.
      A reply falls below the community's threshold of quality. You may see it by logging in.