Acme-CPANModules-Import-CPANRatings-User-stevenharyanto
view release on metacpan or search on metacpan
DateTime::Format::Flexible
Author: THINC <https://metacpan.org/author/THINC>
While it doesn't cover as much phrases as DateTime::Format::Natural,
at least it's simpler to translate (and the dist already includes a
couple of translations). BTW, I think like in the POD of
DateTime::Format::Natural, it needs to list which phrases it
supports. And probably add more :-) <br><br>
Rating: 8/10
DateTime::Format::Natural
Author: SCHUBIGER <https://metacpan.org/author/SCHUBIGER>
I'm giving DateTime::Format::Natural 3 stars because while it's
great for English (it covers more phrases than
DateTime::Format::Flexible), it's also hard to translate. Look at
the source code for DateTime::Format::Natural::Lang::EN: lots of
Englishisms and weird structures (%grammars). Wonder why so far
there has not been any translations to another language? <br>
Rating: 6/10
App::sourcepan
Author: PEVANS <https://metacpan.org/author/PEVANS>
Thanks, just what I needed. (I was hoping cpanm would accept my
--download patch, but this is just as well). <br><br>It still uses
CPAN.pm and thus downloads the relatively big 01mailrc.txt.gz and
02packages.details.txt.gz file, thus slowing the first use. If you
use cpanm exclusively, this is rather annoying especially if you're
on a slow link.
Rating: 8/10
Text::ASCIITable::TW
The method of determining visual width of Chinese characters is
rather hackish. Text::ASCIITable should perhaps use Text::CharWidth
(which can be used to determine visual width of text in other
languages e.g. Japanese, etc) thus rendering this module
unnecessary. <br>
Text::VisualWidth
Author: NANZOU <https://metacpan.org/author/NANZOU>
Also look at Text::CharWidth for an alternative that can be used
with text in other languages (Chinese, etc). <br>
Text::VisualWidth::PP
Author: TOKUHIROM <https://metacpan.org/author/TOKUHIROM>
Also look at Text::CharWidth for an alternative that can be used
with text in other languages (Chinese, etc). <br>
Taint::Runtime
Author: RHANDOM <https://metacpan.org/author/RHANDOM>
Nice idea. Perl should really have included something like this
(analogous to warnings.pm for -w). <br><br>However, for something as
security-related as tainting, I personally think the interface is a
bit too complex and not robust enough. There are too many pitfalls
where one can fail to turn on tainting properly. <br><br>* First,
user must remember to import $TAINT, or doing '$TAINT = 1' has no
effect. There's no error/warning for this mistake. <br><br>* Then,
if one also forgets to import taint_start or taint_start, then doing
'taint_start' or 'taint_env' (without parentheses) will do nothing.
Also does not produce an error/warning except under strict mode.
<br><br>* One must remember to 'taint_env' *after* 'taint_start'.
There's no warning/error if one does the opposite. <br><br>I'd
rather have something like this: <br><br>{ <br><br>use tainting;
<br><br>... code is running in taint mode ... <br> } <br><br>use
tainting; <br> { <br><br>no tainting; <br><br>... code is running
without taint mode ... <br> } <br><br>No functions, no variables to
set, no exports. Tainting of %ENV etc should be done automatically
just like -T. <br><br>EDIT: I wrote tainting and uploaded it to CPAN
as proof of concept.
Rating: 8/10
L Author: SONGMU <https://metacpan.org/author/SONGMU>
Reinvents Class::Autouse (written 12 years ago). But at least L is
much simpler and shorter to type (the equivalent of -ML is
-MClass::Autouse=:superloader). <br><br>BTW, there's also
Module::AutoLoad, Module::AutoINC, and lib::xi which can
automatically install modules from CPAN and load them upon first
use.
UNIVERSAL::moniker
Author: KASEI <https://metacpan.org/author/KASEI>
Perl is not Ruby != everything Ruby does is horrible. This module
has its uses.
Time::Out
Author: PATL <https://metacpan.org/author/PATL>
A wrapper around Perl's alarm()/$SIG{ALRM}, so it has the same
limitations, e.g. you cannot use this to properly timeout external
programs started by system()/backtick. For the latter, you might
want to try IPC::Cmd (run() or run_forked()), or some simpler
interface for it like System::Timeout. <br><br>
Util::Timeout
Author: NOTBENH <https://metacpan.org/author/NOTBENH>
A wrapper around Perl's alarm()/$SIG{ALRM}, so it has the same
limitations, e.g. you cannot use this to properly timeout external
programs started by system()/backtick. For the latter, you might
want to try IPC::Cmd (run() or run_forked()), or some simpler
interface for it like System::Timeout. <br><br>
System::Timeout
Author: CHENGANG <https://metacpan.org/author/CHENGANG>
This is a thin wrapper over IPC::Cmd's run(). I'd personally use
run() directly, it's not much harder or longer to type. Plus,
IPC::Cmd is a core module. <br><br>
Module::Quote
Author: TOBYINK <https://metacpan.org/author/TOBYINK>
Wouldn't a function like
load_module("Math::Module")->new(42) be more obvious?
Is there a specific goal for using custom quote operator (which
requires Devel::Declare, and thus a C compiler to build)? <br>
Module::Hash
Author: TOBYINK <https://metacpan.org/author/TOBYINK>
Wouldn't a function like
load_module("Math::Module")->new(42) be more obvious?
Is there a specific goal for using a tied hash (since there is
already %INC)?
taking multiple sub calls hit.
App::perlfind
Author: MARCEL <https://metacpan.org/author/MARCEL>
A timesaver. Using it on a daily basis (aliased to "pod").
Thanks, Marcel!
PerlX::Maybe
Author: TOBYINK <https://metacpan.org/author/TOBYINK>
A nice syntax addition for avoiding passing or writing a bunch of
undefs. More convenient to write than using ternary operator or
grep. I'm beginning to adore syntax modules like this (as long as it
adds negligible overhead). <br><br>
File::Path::Tiny
Author: DMUEY <https://metacpan.org/author/DMUEY>
I like the concept, but do not like the overly short names mk() and
rm(). Instead of mk(), how about mkdir_p() or mkpath() like in
File::Path. Instead of rm(), how about rm_r() or rmtree() like in
File::Path. <br>
Rating: 6/10
Exporter::Lite
Author: NEILB <https://metacpan.org/author/NEILB>
2011-10-04: I am now using Exporter::Lite exclusively instead of
Exporter. Got bit once by Exporter when using for an OO module due
to clash of assigning to @ISA vs 'use base'. +1 for putting it into
core. <br><br>EDIT 2012-08-08: Nowadays I revert back to Exporter
most of the time because Exporter is core. To avoid @ISA issue, one
simply needs to import import() instead setting @ISA: <br><br>use
Exporter qw(import); <br>
YAML::Syck
Author: TODDR <https://metacpan.org/author/TODDR>
To be fair, in my experience YAML::Syck is not "much more
buggy" than ::XS. It even sometimes works with my YAML data
while ::XS crashes. Go figure.
Devel::FindPerl
Author: LEONT <https://metacpan.org/author/LEONT>
IMO the module should explain in the POD, in what cases using $^X is
not enough or how it is different from Probe::Perl. <br><br>Anyway,
quoting CPAN Testers' CPAN Authors FAQ, $^X is not enough when: <br>
1) perl was executed with a relative path and the script has
chdir()ed; 2) because $^X originates in C's argv[0] (in the main()
function) it is possible for the calling program to exec() in such a
way that argv[0] isn't the path to the interpreter; 3) HP/UX can do
weird stuff in scripts that use #!; 4) VMS. (Not clear about #4
though :) ).
Taint::Util
Author: AVAR <https://metacpan.org/author/AVAR>
IMO this is the best module to deal with tainting. BTW there are
several other modules like Taint (only provides taint + tainted, no
untaint), Untaint (only provides untaint with awkward interface,
like $v = untaint(qr/.../, $v)), Scalar::Util (only provides
tainted), Test::Taint (does not provide untaint but provides
taint_deeply and test predicates), and several others.
Markdown::Pod
Author: KEEDI <https://metacpan.org/author/KEEDI>
I use Markdown::Pod for my module Perinci::To::POD. <br><br>This
module does not output proper POD for many (not so) edge cases,
like: <br><br>">" and the likes are not yet escaped, producing
C<>> when it should have been C<< > >> or
C<E<gt>>. <br><br>Ordered list numbering does not yet
work, e.g. "2. ...\n3. ...\n" produces "=item 1. ...
=item 1. ..." <br><br>Ordered list with item numbered other
than 1 does not work (see above). This should be supported in POD
because POD allows us to write the bullets/numbers for each item.
<br><br>Inline markup is not smart enough to differentiate
word_with_underscore. So "foo_bar and foo_baz" becomes
"fooI<bar and foo>baz". <br><br>Plus it segfaults
sometimes (might be my perl though).
Rating: 4/10
Lingua::Metadata
Author: MAJLIS <https://metacpan.org/author/MAJLIS>
As previous reviewer noted, this module is actually just a front-end
to the author's web service. Plus license is specifically BSD (which
allows this module to be included in closed source projects), this
is rather ironic to me. <br>
Finance::Currency::Convert::WebserviceX
Author: CLACO <https://metacpan.org/author/CLACO>
Simple, no-fuss interface, recommended. As mentioned in the doc, the
alternatives have some downsides: Finance::Currency::Convert::Yahoo
is based on web scraping while ::XE has usage limits. <br>
Carp::Always::Color
Author: DOY <https://metacpan.org/author/DOY>
Like Carp::Always? Want something better? Here it is. <br>
CHI Author: ASB <https://metacpan.org/author/ASB>
The DBI of caching. Stop reinventing your caching framework and just
use this. <br><br>UPDATE 2013-01-16: unfortunately, the use of Moose
reduces the usefulness of CHI for command-line scripts (0.2s/146
files/53k lines startup overhead just to initialize a File cache).
So 4 stars instead of 5. Let's hope the author migrates to Moo
someday. <br>
Rating: 8/10
Monkey::Patch
Author: FRODWITH <https://metacpan.org/author/FRODWITH>
Compared to several other monkey-patching modules (like Sub::Monkey
or Class::Monkey) I prefer this one because the interface is
simplest and the documentation is the most straightforward. Plus it
can do stacked patching and unordered restore, which is cool.
<br><br>
( run in 1.757 second using v1.01-cache-2.11-cpan-c221a9de4ec )