Re: Perl credited with changing the rules
by apotheon (Deacon) on Oct 19, 2004 at 00:12 UTC
|
Unfortunately, I don't agree with it as stated.
Perl didn't kill the "one tool, one job well" way of doing things. In fact, as Linux becomes increasingly popular, that approach to doing things is (re)gaining ground. What the statement that Perl has delivered the eulogy for that approach fails to recognize is that Perl isn't "one tool for many jobs" — it's a simple, powerful, flexible tool factory.
Whereas previously users of Unix systems either had to create their tools the "hard way" or just use the tools that were available, with Perl they have the opportunity and ability to create new tools as they're needed, quickly, efficiently, and with great enthusiasm and alacrity. If anything, Perl is the salvation of the "one tool, one job well" approach to computing, and I'm glad for that. That's one reason I'm a Linux lover, and avoid Windows where it's practical to do so! Perl just makes Linux even more a "one tool, one job well" OS by ensuring that if the tool I need doesn't exist, it will as soon as I get around to making it.
Perl is more than a universally featured tool, which is a good thing: we don't need that kind of bloat.
Give a man a user friendly, many featured tool, and he'll compute for a day. Give him Perl, and his enthusiasm will last his whole life.
| [reply] |
Re: Perl credited with changing the rules
by dragonchild (Archbishop) on Oct 19, 2004 at 01:04 UTC
|
I agree completely with apotheon. Many people, and it appears that even opensource legends are in this category, confuse Perl the language with the Perl the culture. The language and the abilities it provides in a clear and concise fashion are what has delivered the eulogy to the many disparate tools written in C that you would have had to squeeze different APIs together with. It has made the APIs to these "one tool, one job" thingies easier to manage and the functionality easier to include into your tool.
Nothing more, nothing less.
Being right, does not endow the right to be rude; politeness costs nothing. Being unknowing, is not the same as being stupid. Expressing a contrary opinion, whether to the individual or the group, is more often a sign of deeper thought than of cantankerous belligerence. Do not mistake your goals as the only goals; your opinion as the only opinion; your confidence as correctness. Saying you know better is not the same as explaining you know better.
| [reply] |
Re: Perl credited with changing the rules
by jdporter (Paladin) on Oct 19, 2004 at 14:59 UTC
|
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>
| [reply] |
|
|
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
| [reply] [d/l] [select] |
|
|
| [reply] [d/l] [select] |
Re: Perl credited with changing the rules
by DrHyde (Prior) on Oct 19, 2004 at 09:31 UTC
|
A eulogy is normally read not by the person who killed, but by one who regrets the passing. So unless you think that Perl is like The Godfather, Pike was complimenting Perl. | [reply] |
|
|
The reference to the eulogy still indicates that the "one tool, one job well" approach is dead, however. I don't believe it is. Rather, I think it's enhanced by the presence of Perl, and made both more powerful and more flexible.
| [reply] |
Re: Perl credited with changing the rules
by Jenda (Abbot) on Oct 19, 2004 at 14:50 UTC
|
There is one more thing. The "one tool for one job" lives inside Perl. The only difference is that the "tool" is not an executable, but a module. And instead of using the executables from the prompt or a shell script you use the modules from the prompt or a Perl script.
Jenda
We'd like to help you learn to help yourself
Look around you, all you see are sympathetic eyes
Stroll around the grounds until you feel at home
-- P. Simon in Mrs. Robinson |
| [reply] |
Re: Perl credited with changing the rules
by mr_mischief (Monsignor) on Oct 21, 2004 at 14:59 UTC
|
Sorry to follow myself up. I just couldn't choose which one of the wonderful responses to which to reply.
I took RP's comment to mean that small tools no longer need to be tossed and started over. Since the source to programs in Perl is readily available and the language is so powerful, it's easier in many cases to maintain a solution than to pitch it out and start over.
That position is harder to reach with code in C, C++, Fortran, et cetera.
Perhaps I'm misinterpreting what Mr. Pike said, but what I understood him to say is not just a wonderful endorsement of Perl but also a wonderful statement about the state of affairs in programming. Now that I reread the question and answer, it's clear that it could be interpreted any number of other ways.
I apologize if I'm not writing as clearly as usual. I'm a bit distracted in that my wedding is two days from today. :-)
| [reply] |
|
|
You make a good point. I don't believe that's the meaning he intended, but I recognize the validity of what you're saying and appreciate your perspective on the matter.
Also, it comforts me to assume your reference to "wonderful responses" applies, in part, to mine. Heh.
| [reply] |
Re: Perl credited with changing the rules
by dga (Hermit) on Oct 21, 2004 at 17:57 UTC
|
If you think or perl as a toolbox of many tools, then the 'tool which does the job well is not quite gone'. For example, if one wanted to match expressions contained within a string using perl, one would probably use the regex tool to do the job. Or, if one wanted to count distinct words in some file, one might use the hash tool to store those words with their counts, etc.
So, perl could be considered a toolbox of tools which each do specific things and do them well, joined with a synergy component which allows all the tools to play well together and do many things well that would not be as "well" ( small, efficient, etc ) using a group of stand alone tools.
| [reply] |