http://www.perlmonks.org?node_id=566124


in reply to Let's face it, Perl *is* a scripting language

The term "scripting language" is so ill-defined as to be rather useless as a focus for discussion.

To me, the opposite of a scripting language is one in which each change to a program requires a lengthy build process, and the usual indication of a bug is a coredump or a (slow or fast) runaway memory hog. The speed of the edit/test cycle and the elimination of many classes of bugs common in C code are big plusses for scripting languages in general, and perl in particular.

There are a variety of languages that offer this "scripting" benefit; maybe some of those are not suited to building large applications, but I suspect in most cases all they need are the right methodology - certainly, after I had spent only a year or two working with perl it is unlikely I could have designed something the size of my current work project with any success, but I've experimented with enthusiasm, and now I'm perfectly comfortable tackling large projects.

Next time you are on Andrea's sofa, maybe you should try asking the guy what "scripting language" means to him, and then exploring his individual points in relation to perl.

Hugo

  • Comment on Re: Let's face it, Perl *is* a scripting language

Replies are listed 'Best First'.
Re^2: Let's face it, Perl *is* a scripting language
by Ovid (Cardinal) on Aug 08, 2006 at 11:29 UTC

    Next time you are on Andrea's sofa, maybe you should try asking the guy what "scripting language" means to him, and then exploring his individual points in relation to perl.

    Part of the problem is that this technique doesn't work with PHBs. Many more companies could profitably use Perl and take advantage of the fact that it doesn't have many artificial limits on what programmers can do. Further, when I think about trying to reach the masses with the "stop using Perl 4" argument, I can't have a dialogue with each and every reader. As a result, I need to think of "marketing" points which can get these issues across succinctly.

    Cheers,
    Ovid

    New address of my CGI Course.

      This technique can be adapted to suit addresses to PHBs and anonymous audiences, though.

      For instance, if/when a PHB says "But Perl is just a scripting language!" you might affect a confused look and say "How do you figure?" Put the opposition on the defensive, because you know he's wrong, and it will be easy to shut down the opposing argument as soon as you know what that argument is. If you try to offer a counter-argument without finding out what it is, you'll fail to make a strong impression. If the PHB knows something, he'll give you an argument to which you can respond substantively. If not, he'll give you a broken "I heard it on NPR" type of pseudo-argument excuse that can be diplomatically defused by responding to the specific concern that was raised — possibly by saying "Oh, that hasn't been true since Perl 4, a decade ago. The problem isn't the language, but the fact that a lot of people are still writing Perl 4 to be executed by their Perl 5 interpreters."

      In the case of writing for an anonymous audience (such as writing an essay at PerlMonks, an article for a magazine, or an introduction for a book about Perl), there's a very common and rhetorical technique employed every day to which this applies: one first explains the case for common approaches to the opposing argument (saying "Many think of Perl as a scripting language because . . ."), then one debunks them all in the text of the essay (or whatever). In other words, make your opponents' arguments for them, then dismantle those arguments with "new" arguments of your own. The answer to some of these, as well, will be "That's Perl 4, not Perl 5. Here's why."

      It doesn't immediately educate the whole world, of course, but it's useful — and nothing else we can do will immediately educate the whole world, either. Even Sun's message that Java should be used for everything took some time to propagate.

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

Re^2: Let's face it, Perl *is* a scripting language
by ptum (Priest) on Aug 08, 2006 at 14:31 UTC

    I have occasionally been irritated by the condescending way Perl is referred to as 'just a scripting language', and I agree that it is a poorly defined term.

    The Wikipedia article acknowledges the ambiguity of the term, but helps to identify why it is used in a disparaging way:

    • Scripting languages are associated historically with batch programs and job control language (JCL). As such, they are not 'true' programs, but 'mere' shells or shoehorns by which the actual programs are run. To the extent that Perl is considered the equivalent of mainframe JCL, Perl can be contemptuously dismissed, at least by those with minimal exposure.
    • The emphasis in the popular perception of scripting languages seems to be on the assembly of existing components, rather than the development of new components. The existence of the CPAN contributes somewhat to this view -- a skilled Perl developer can often assemble complex applications with considerable reliance on other's code. While this is a huge advantage from a developer's perspective, I think it has contributed to the way in which Perl developers are sometimes sneeringly described as 'assemblers' rather than 'developers'.

    No good deed goes unpunished. -- (attributed to) Oscar Wilde