Try-Tiny
(0.09)
Warning: if you are considering this module now that the "Error" module has been decommissioned, of if you are used to try/catch in the C++/Java/.NET worlds, the semantics here are quite different. In most other realms, all exceptions propagate out of a try block, unless you explicitly catch them. Here, the reverse is true - everything is swallowed by the try block, unless you explicitly propagate it in the catch block as follows:
try { # do stuff }
catch { die $_; }
finally { # cleanup };
Why take a known syntax and give it different semantics? That can only lead to confusion. It would be better to use different keywords for this, methinks.
Evan Haas - 2011-05-23T13:04:52 (permalink)
7 out of 12 found this review helpful.
Was this review helpful to you?
Yes
No
Devel-StackTrace
(1.27)
We had a need for some of our shared libraries to behave differently if the caller was mod_perl (vs. a batch job). This module allowed us to solve the problem neatly.
Evan Haas - 2011-05-23T11:53:20 (permalink)
2 out of 2 found this review helpful.
Was this review helpful to you?
Yes
No
XML-SemanticDiff
(1.0000)
Does what it says, another great tool for the toolbox.
Evan Haas - 2011-05-23T11:49:05 (permalink)
1 out of 1 found this review helpful.
Was this review helpful to you?
Yes
No
XML-LibXML
(1.70)
As others have mentioned, it has a bit of a learning curve, but it's worth it. If you start with another XML parser, you'll just outgrow it.
Supports both tree- and stream-based parsing, so you can make the performance vs. convenience decision on a case-by-case basis.
Evan Haas - 2011-05-23T11:47:37 (permalink)
2 out of 2 found this review helpful.
Was this review helpful to you?
Yes
No
Test-Deep
(0.108)
This module is delicious. We use it heavily in our test scripts, for comparing expected vs. actual output.
Evan Haas - 2011-05-23T11:43:28 (permalink)
2 out of 2 found this review helpful.
Was this review helpful to you?
Yes
No
Pod-Simple
(3.16)
Echoing adam's review, we use only the command-line interface and it works great. For CPAN look/feel, just overwrite the provided stylesheet with CPAN's after generation:
wget -O /my/pod/dir/_blkbluw.css search.cpan.org/s/style.css
Evan Haas - 2011-05-23T11:39:55 (permalink)
3 out of 3 found this review helpful.
Was this review helpful to you?
Yes
No
Test-Class
(0.36)
As a converted Java developer, this module is a very nice creature comfort.
Evan Haas - 2011-05-23T11:33:46 (permalink)
3 out of 3 found this review helpful.
Was this review helpful to you?
Yes
No
Test-Most
(0.23)
Does what it says, very useful.
Evan Haas - 2011-05-23T11:29:52 (permalink)
0 out of 3 found this review helpful.
Was this review helpful to you?
Yes
No
Test-Simple
(0.96)
If you're looking to start writing automated tests, look no further, this is the de facto standard and deservedly so.
Installing this module via Test::Most will get you other goodies that you'll probably want soon, if not immediately.
If you prefer xUnit/OO style tests, you can use Test::Class on top of Test::More.
Evan Haas - 2011-05-23T11:25:52 (permalink)
1 out of 1 found this review helpful.
Was this review helpful to you?
Yes
No
perl-ldap
(0.37)
We have used this module to extract info from Active Directory for several years now, never had any problems.
Evan Haas - 2011-05-23T11:12:13 (permalink)
1 out of 1 found this review helpful.
Was this review helpful to you?
Yes
No
Class-Singleton
(1.4)
Love the idea. It seems, though, that all but the most trivial of classes would have to override _new_instance (if only to call their own constructor). At that point, ease-of-use begins to slip and I may as well manage the singleton member myself. I suggest having Class::Singleton call the constructor directly ($class->new) when creating a new instance.
Evan Haas - 2011-03-25T06:59:54 (permalink)
2 out of 2 found this review helpful.
Was this review helpful to you?
Yes
No
Params-Validate
(0.94)
1) Rich features. It handles common validations out-of-the-box, and with the ability to specify a regex/callback it's easily extensible.
2) The error messages generated when validation fails are very user-friendly.
3) The documentation is also stellar; every question I've had has been answered there.
Use it without hesitation.
Evan Haas - 2010-11-24T15:44:37 (permalink)
4 out of 4 found this review helpful.
Was this review helpful to you?
Yes
No

