Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: What CPAN modules are "good reads"?

by SolidState (Scribe)
on Jun 14, 2005 at 10:50 UTC ( [id://466471]=note: print w/replies, xml ) Need Help??


in reply to What CPAN modules are "good reads"?

IO::All stands out in my opinion. It seperates All.pod from All.pm (which I have always felt is the right thing to do), the comments stand out and make sense, the coding style is kept clean and consistent (something sadly lacking in many otherwise good modules).

I haven't looked at the code for Brian's other modules (such as Inline, Kwiki and YAML, to name a few), but I assume they are also excellent examples of Perl code, having been written by the same person.

Replies are listed 'Best First'.
Re^2: What CPAN modules are "good reads"?
by stvn (Monsignor) on Jun 14, 2005 at 13:10 UTC

    I will agree that IO::All (with it's use of Spiffy) makes for some clean looking code. However, IO::All is just crammed with everything and the kitchen sink thrown into one module, and even a way to further extend it with plugins!

    Spiffy itself is somewhat questionable in my mind as well since it does so many different things in one module. But after seeing how quickly ingy can whip out new Spiffy based modules, I am less bothered by that fact (usefulness almost always outweighs overly-anal-elegance).

    Back to IO::All, I do have to say that it is very nice when you are writing quick scripts and tools. It takes the headache out of doing some very complex stuff when you just don't have the time to do it the "right" way (the "right" way being a subjective thing). But to use it for any serious sizable project IMO would be inadvisable.

    But of course, this does not mean it is not good code to read :), in fact I rather enjoyed reading it (and learned plenty about obscure IO techniques as well). I would also recommend a look at Spiffy too, it has some rather interesting code in it as well.

    -stvn

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://466471]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (5)
As of 2024-03-29 10:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found