atom feed2 messages in org.perl.perl5-portersANNOUNCEMENT: Perl Power Tools (was:...
FromSent OnAttachments
Tom ChristiansenFeb 24, 1999 4:37 pm 
Nick Ing-SimmonsFeb 24, 1999 7:27 pm 
Subject:ANNOUNCEMENT: Perl Power Tools (was: Re: PodParser 1.07 (was: RE: C<stuff()> vs stuff()))
From:Tom Christiansen (
Date:Feb 24, 1999 4:37:31 pm

tchrist> This is what Ken invented cmp for, guys. Sheesh.

bradapp>Surely you aren't referring to the 'cmp' in File::Compare, because bradapp>this entire cmpxxxx() functions subthread is precisely about fixing bradapp>various portability/configurability problems with the 'cmp' from bradapp>that package (sheesh ;-)

bradapp>Or did you mean some other cmp???

You guys are busily bending over backwards and further, just to avoid invoking standard, expected, and fundamentally basic tools in an altogether honorable effort to enhance portability to even those legacy, tool-deficient systems that the underprivileged, unfortunate, and sometimes simply unwary masses have been cursed to toil under.

This is good, for their need is great. Suffering is bad.

But don't stop there! Don't merely implement a cat module, a cmp module, an ls module, a tee module, a basename module, a grep module, a head module, a find module, a cp module, an rm module, etc., as you are currently doing. Turn these all into the real programs, and put that directory of them in one's path, and you will have given the world a small gift of great joy.

This modest act, hitherto unaddressed by the mighty Module::Gods, would cause tremendous cheers to go up by simple toolsmiths and toolaholics everywhere. It would do a far greater service than mere fancy-dancy modules by themselves ever would. That's because it would be real programs usable not just by ultra-elite superprogrammers, but by regular humans with simple needs. It would instantly enhance portability of Perl scripts in general and build environments in particular, without the beleaguered programmer having to lift a tired finger.

In loving memory of RSTS/E, which more than a decade past first showed Larry and me how nifty it was to use a high-level language (that would be BASIC-PLUS) for systems programming and whence Perl derives some of its mindset and even a wee bit of its featureset, let us now therefore set forth to create a distribution of small Perl programs comprising that most basic and fundamental of toolsets, the one that every loyal acolyte of the Interchangeable Way expects to be there but comes up empty-handed and despairing. These old companions would suddenly be there as a continual source of comfort for the heretofore lonely hacker in his perilous journey deep into the acid heart of the Desert of Redmond, and beyond. A free, purely Perlian /bin-emulation suite of tinytools would shine in spiffiness, synergy, security, and of course, effect at last that nominally noblest of goals: ubiquitous portability.

And it would make nice press for Perl, too, eh?

Modules without programs are slightly silly -- solipsistic soliloquies. But cloak these modules in honest tools, and surely shall your names be written in the Blessed Book of Courageous Coders who helped save the world.

The geas is set. May the contributions begin. Happy hacking!