|Think about Loose Coupling|
Re: how did this module get into CPAN ?!by grinder (Bishop)
|on Jul 21, 2008 at 06:19 UTC||Need Help??|
Them's fighting words. Let me see...
"I couldn't resist not pressing the SOURCE CODE link to see what could lie behind it". Curiosity killed the cat, and much of the effectiveness from CPAN modules comes from the fact that they work just as well regardless of whether you look at the source or not. *cough* *CGI.pm* *cough*
"A COMPLETE AND UTTER PILE OF OVERBLOATED CRAP". I went and had a look. I saw some fairly well-structured, clean code, that looks about 20 years old and has gone through the hands of many authors, each adding a little tweak here and there to address bug reports that have been made over the years. But the essential structure is still perfectly easy to follow.
"too big compared to what it does" It does a lot. Your snippet does hardly anything at all and does it poorly since it cannot be reused. It has to cut'n'pasted into new programs manually. Hope it's bug-free!
"contains hidden "logic" that is NOT documented" You shall have to back this statement with proof. And if the logic is useful, then I think a documentation patch would be in order, no?
"I propose the following code which is cleaner and more readable" Patches welcome. Send it to email@example.com (as it is a core module that's been around since 5.000). Which, getting around to the title of your post, allows me to answer your initial question: it "got onto" CPAN since it predates CPAN. It was around before CPAN was a gleam in Jarkko Hietaniemi's eye.
"And all these for a simple module" And therein lies your mistake.
• another intruder with the mooring in the heart of the Perl