Reviews by



Text-VimColor (0.05) *****

Slow, but oh so very cool.

Module-Versions-Report (1.02) ****

Splendid module that is great for inclusion in tests (particularly for those using Module::Install as well).

Slight deduction for its docs not mentioning the name of the routine that does the actual report, which is useful when one wants it to go through proper diag() channels.


diag Module::Versions::Report::report();

Tie-OneOff (0.2) *****

Excellent module for creating one shot tied variables. Want a variable to be tied to a subroutine/closure without the hassle of writing a whole tie class? This is the module for you. Very simple to use and very powerful.

CGI / (3.00) *****

Thorough. Very thorough.

It would be nice if the HTML generation methods weren't in there, but they have their use sometimes (though I'm more inclined to pull in TT or similar). The best thing about this module is that it's omnipresent. Not always a recent version, but there's _some_ version.

Bot-CPAN (0.79) *****

A lovely irc bot. Uses POE underneath and can happily pull all sorts of data --- it can list CPAN testers smoke reports, any of the info from the module list, provide a URL for the CPANwiki _and_ it can even get reviews and ratings from this site. Great module.

Class-Accessor (0.18) ****

An excellent way to create standard accessors and mutators for your objects. Very fast and with explicit declarations (rather than relying on the AUTOLOAD bodge).

Slight problem if you or any of your super or sub classes ever define a method called 'get' or one called 'set', but otherwise wonderful.

Email-Simple (1.6) *****

At last! An email parsing module that is simple to use and doesn't need 3 million modules to do its work.

The docs are great, simply from there not needing to be that much. The module itself works well and has a sane API. It's great.

Params-Validate (0.65) *****

Excellent way to validate one's parameters. Very worthy of the namespace.

Lets one validate the type of ones parameters, lets you attach callbacks to verify the contents of said variables, lets you have positional _or_ named arguments, lets you have default values for things. Lets you do lots of things.

Very nice and I strongly recommend it.

Class-MethodMaker (1.11) ****

A splendid module for getting classes quickly written. Neat syntax allows accessor, mutators, constructors and such to be built rapidly. Automatically creates convenience methods for list and hash instance data. Handles delegation. Does lots of good stuff. Worth a good look.

Only drawback is that some of the more complicated bits of behaviour aren't documented that well, but that's ok because those are the complicated bits =)

DBI (1.37) *****

Excellent module with thorough documentation. The newer versions also have lots of shortcut methods which save a lot of time (and are part of why I'm giving it 5/5 for "Ease of Use").

I dread to think how my code would be if I'd had to write this for myself

web (1.35) **

Somewhat of a hodge podge of a module. The docs are decent, which is something. The problem is that it's a module that just holds a collection of mostly unrelated routines.

Why is it called 'web'? No idea. It's not a pragma and it's a distinct minority of routines that have anything to do with the web.

The routines themselves are irritating in that they follow PHP style for their names: that is, there is no consistent use of underscores. They are also mostly of minimal importance. There's nothing in this module to make me say "hey, that's useful".

Internally it's somewhat of a mess as it looks like someone said "always use strict" and instead of declaring variables with my/our/"use vars", they've just gone nuts on $web::*. The test suite is somewhat minimal.

All in all, give it a miss.

xsub (1.0) *

A badly done version of Inline::C with no docs. Makes me wonder if any of the guides on writing modules for CPAN were read by the author. Also makes me wish I could vote '0'.