in reply to Perl credited with changing the rules

From lwall-quotes.txt:

      > And it goes against the grain of building small tools.

      Innocent, Your Honor.  Perl users build small tools all day long.

             -- Larry Wall in <1992Aug26.184221.29627@netlabs.com>

  • Comment on Re: Perl credited with changing the rules

Replies are listed 'Best First'.
Re^2: Perl credited with changing the rules
by etcshadow (Priest) on Oct 20, 2004 at 01:38 UTC
    Absolutely. Perl is, in some ways, a big monstrous tool (it is, after all, a complete language). However, perl is also (and frequently) just a material from which many tools are built.

    perl -lne '$x+=$_; END{print $x}', for example, is a simple tool (you might even alias it to "sum"), much like sort or grep. Heck, if you're on a system without sort or grep, maybe you create an alias for perl -lne 'push@x,$_; END{print sort @x}' (yeah, i know it doesn't support all the options that typical GNU sort would... but if you know perl, you can do that easily), or for: perl -ne 'BEGIN{$pattern=shift@ARGV} print if /$pattern/' (same arguments, and many more, etc).

    Anyway, the point is that perl isn't just a universal tool. It can also be a set of many simple tools.

    For the record, no, I never make aliases for stuff like this, I just do 'em on the fly... for example, who needs a -n option to a sort alias, if, rather, you just add {$a <=> $b} in the sort?

    ------------ :Wq Not an editor command: Wq
      The advantage of having a -n option to sort meant that sort users had an optimized numerical sort from the start. It took Perl more than ten years to optimize the common {$a <=> $b} such that one doesn't need to enter/leave a scope for each comparison.

      Oh, and -n types a lot faster than {$a <=> $b}.