Rate a module

Find a distribution you would like to review:

To write a review you'll need a Bitcard account.

Browse reviews

Search CPAN displays the average rating for each distribution.

Recent reviews (RSS feed)

1 out of 1 found this review helpful:

Acme-State (0.03)

This should probably not be an Acme module, as it appears to do something useful. It's ease of use could easily be 5 stars, if some work were put into making the save file relocatable.

John J. Cassidy - 2009-07-03 11:13:47
Was this review helpful to you?  Yes No


(more reviews of Acme-State)

1 out of 2 found this review helpful:

XML-Feed (0.43) *****

Just wanted to say: It works really nice! And it seems to make
easy to tackle the problem of all those different feed formats.
I've just yesterday released AnyEvent::Feed, which is a nice
convenience wrapper around AnyEvent::HTTP and XML::Feed. It works
really well for me :) Without XML::Feed I would've stayed out of
the Web 2.0 feed world :-)

elmex - 2009-07-03 02:06:09
Was this review helpful to you?  Yes No


(more reviews of XML-Feed)

0 out of 1 found this review helpful:

Geo-Coder-Google (0.05) *****

Simple. Easy to use.

Adam Prime - 2009-07-02 13:39:06
Was this review helpful to you?  Yes No


(more reviews of Geo-Coder-Google)

1 out of 1 found this review helpful:

Devel-REPL (1.003006) *****

I do love the REPL shell. Sometimes I wonder if this or that would work so with re.pl you can simply evaluate it in an interactive shell just like you can do in interactive Ruby (IRB) or worse, a Basic shell ;-)

Looking at the powers of CatalystX::REPL (integrating REPL into Catalyst to interactively introspect your running app) I must admit that this module was the most helpful one on debugging I found on CPAN in the last months.

The only thing I consider to be strange is it's use of a lot of "black magic" modules, but how could sneaking the symbol table be done else?

Martin Gutsch - 2009-07-02 05:44:05
Was this review helpful to you?  Yes No


(more reviews of Devel-REPL)

Test-Base (0.58) *****

Excellent unit testing framework. Let's me easily create a small testing function and run it over a lot of data.

Daniel Holmlund - 2009-07-02 02:01:08
Was this review helpful to you?  Yes No


(more reviews of Test-Base)

IO-Lambda (1.10) *****

just works as documented

great work!

Egor Korablev - 2009-07-01 16:18:23
Was this review helpful to you?  Yes No


(more reviews of IO-Lambda)

0 out of 5 found this review helpful:

WebService-Bloglines (0.12) **

my information the register.

fernando de J.Cardoso - 2009-06-29 14:08:02
Was this review helpful to you?  Yes No


(more reviews of WebService-Bloglines)

2 out of 4 found this review helpful:

Sys-Mmap-Simple (0.13)

http://cpansearch.perl.org/src/LEONT/File-Map-0.16/Changes

Sys-Mmmap became File-Map at 0.16.

Kent Fredric - 2009-06-29 12:34:47
Was this review helpful to you?  Yes No


(more reviews of Sys-Mmap-Simple)

0 out of 3 found this review helpful:

Sys-Mmap-Simple (0.13)

WTH? The same author has also submitted File::Map, which does basically the same thing. Which one is supported?

Pista Palo - 2009-06-29 10:06:26
Was this review helpful to you?  Yes No


(more reviews of Sys-Mmap-Simple)

0 out of 2 found this review helpful:

File-Map (0.16)

WTH? The same author has also submitted Sys::Mmap::Simple, which does the same thing. Which one is supported?

Pista Palo - 2009-06-29 10:05:41
Was this review helpful to you?  Yes No


(more reviews of File-Map)

0 out of 1 found this review helpful:

Proc-Reliable (1.16) *****

Easy to use, does exactly what it claims.

Nick - 2009-06-29 07:53:07
Was this review helpful to you?  Yes No


(more reviews of Proc-Reliable)

0 out of 1 found this review helpful:

Locale-Country-Multilingual (0.23) ****

This module really fills an annoying gap, and therefore 4 stars. It's also well documented and easy to use. But ...

Data files in a Perl distribution always make me frown. Why do you parse a file LL.dat from a Perl module? Turn them into Perl modules themselves, and let the Perl interpreter do the job. It can do it a lot better, faster, and additionally - with a nice, perlish interface - your users would have it a lot easier to extend your module.

Why do you read "INCDIR/Locale/Country/Multilingual/LL.dat" yourself, but not simply "require Locale::Counry::Multilingual::LL". That has several big advantages (apart from being faster and perlisher):

- People can add more languages by simply placing a language module somewhere in @INC. Currently they have to place that in a directory, where they maybe don't have write access.

- People can override translations for a particular language.

- With a minor internal change it is also possible to override one particular translation. I would actually turn all the data into subroutines. The translation for country "cn" in language "bg" would then be retrieved by a call to Locale::Country::Multilingual::bg::cn(), and if you want to override that, you just override that particular method.

With that change, you can also elegantly solve the problem with country-specific translations. The module Locale::Country::Multilingual::ll_CC would simply have to inherit from Locale::Country::Multilingual::ll, and override only those few methods, where it is needed, instead of redefining the entire data.

An internal change like that described above would then suggest an alternative API: You could turn the module into a mere factory class for the translator objects. These translator objects all inherit from a base class that handles the nasty I/O aspects (utf-8 flag ...), and the users would invoke the methods like CA(), GB(), and so on themselves.

Implementation that falls back to a default language? No problem. Define an additional import flag, where you can define base language(s). In presence of this flags, the translator objects created by the factory simply inherit from the translator for that language (by fiddling with @INC, no problem), and voilĂ ! you get a translator that gives you a country name for country CC in the selected language, or falls back to some default language.

The only thing that becomes tricky is to get a list of the countries that a particular translator knows translations for, but even that is feasible and not an important feature anyway.

Apart from that, never mind, a good module.

Guido Flohr - 2009-06-29 07:52:56
Was this review helpful to you?  Yes No


(more reviews of Locale-Country-Multilingual)

2 out of 2 found this review helpful:

Iterator (0.03) **

This module does everything you'd expect from a class implementing an iterator, apart from one thing: it buffers one element of the stream of scalars, produced by your code. The buffering is done by pre-fetching one element as soon as your iterator has been initialized. Every subsequent fetch will return the buffered element and add a fresh element to the internal buffer.

This behavior leads to unexpected results, and if you are using non-pure functions for you iterators (such as database operations or accessing shared variables), your code may deadlock or behave as if everything happens out of order.

If you do use pure functions for your iterators, you may find that this module is exactly what you need.

Michael Zedeler - 2009-06-28 11:25:21
Was this review helpful to you?  Yes No


(more reviews of Iterator)

1 out of 1 found this review helpful:

MooseX-Types-Path-Class (0.05) ***

A useful module to be sure, but perhaps might benefit from a clearer synopsis, an example, and a little bit more thorough documentation. It expects that you have a lot of experience with Moose and Path::Class, which is fine, but it might provide a fuller description to those who arrive here without prior knowledge of those modules. Still an early version so I am certain later versions will be more complete. :)

Jeremiah C. Foster - 2009-06-27 14:40:17
Was this review helpful to you?  Yes No


(more reviews of MooseX-Types-Path-Class)

3 out of 4 found this review helpful:

ToolSet (1.00) *****

A quick glimpse into SYNOPSIS was all I needed for y.pm a ToolSet for Oneliners. I always wanted to load List::Util and friends without any fuzz.

# just rocks
perl -My -e 'say sum 1..10'

Update:
Above described y.pm is now available on CPAN in the distribution ToolSet::y

Joerg Meltzer - 2009-06-27 07:03:55
Was this review helpful to you?  Yes No


(more reviews of ToolSet)

2 out of 2 found this review helpful:

BerkeleyDB (0.39) ***

A solid module, but some interfaces are pretty weird (methods don't return values, they populate variables you supply as arguments) and the documentation leaves a lot of holes and "TODO" (to-write) sections. If some people out there know how to fill the holes (I don't, unfortunately) it would be most appreciated if someone could submit doc patches.

Ken Williams - 2009-06-26 09:37:18
Was this review helpful to you?  Yes No


(more reviews of BerkeleyDB)

0 out of 8 found this review helpful:

DBI (1.609) *****

No documentation at all at http://dbi.tiddlyspot.com/ All pages are empty!

Very frustrating for first time users

jaime - 2009-06-25 12:52:44
Was this review helpful to you?  Yes No


(more reviews of DBI)

1 out of 2 found this review helpful:

Lingua-EN-Keywords (2.0) **

Didn't return useful results.

Adam Pritchard - 2009-06-24 14:19:06
Was this review helpful to you?  Yes No


(more reviews of Lingua-EN-Keywords)

2 out of 2 found this review helpful:

libwww-perl (5.827) *****

LWP::Simple shows how interfaces should be done:

use LWP::Simple;
$content = get("http://www.sn.no/";);
die "Couldn't get it!" unless defined $content;

If I want to get a URL's contents, I get() the "URL's" $content. IO::All takes it a step further, but LWP::Simple shows how to make easy things easy.

Pista Palo - 2009-06-24 10:04:19
Was this review helpful to you?  Yes No


(more reviews of libwww-perl)

3 out of 8 found this review helpful:

Task-BeLike-RJBS (20090219) *

RJBS rocks and I loved his talk on Git at YAPC10, but I have to agree with David Cantrell on this one.

Dan Dascalescu - 2009-06-24 01:13:16
Was this review helpful to you?  Yes No


(more reviews of Task-BeLike-RJBS)

3 out of 8 found this review helpful:

Task-BeLike-BINGOS (1.04) *

Perhaps there is a better place for this than CPAN?

Dan Dascalescu - 2009-06-24 01:11:54
Was this review helpful to you?  Yes No


(more reviews of Task-BeLike-BINGOS)

3 out of 3 found this review helpful:

JSON-Syck (0.07) *

JSON::Syck is nice, if you need a compact serialization and you will always only use JSON::Syck do actually deserialize your data, but it will not properly work with other JSON decoders and can sometimes generate faulty JavaScript, too.

This is clearly a tweaked YAML encoder and it will generate serializations which are not valid JSON and sometimes, in edge cases, not even valid JavaScript.

Some things you have to look-out for which are still unfixed in the latest version (I have not reported these as bugs anymore as the author now also recommends another module):

- Randomly changes which quotes it outputs - sometimes seems to use " (which is correct JSON), sometimes it uses ' (which is not correct JSON but at least correct JavaScript)
- Will sometimes wrongly escape ' characters and then output '' (that's two apostrophes) instead of \' - this breaks the syntax of your JavaScripts, should you directly include JSON::Syck results into your scripts
- The handling of 8-bit characters is wildly inconsistent. Sometimes they'll be inserted as-is, sometimes it will wrongly escape them with \x - which is valid Perl but not valid JavaScript

As the author said: For true JSON encoding you should probably better use JSON::XS. I, by the way, wildly appreciate that the author recommends a better module - I first found JSON::XS through the hint in the documentation here.

Markus Peter - 2009-06-23 01:49:05
Was this review helpful to you?  Yes No


(more reviews of JSON-Syck)

3 out of 3 found this review helpful:

JSON-XS (2.24) *****

We've used JSON::Syck before and experienced troubles with it after a while as it generates "JSON" which is sometimes not even valid JavaScript.

We've since switched to this module - if you ever need JSON encoding/decoding - use this!

Markus Peter - 2009-06-23 01:41:58
Was this review helpful to you?  Yes No


(more reviews of JSON-XS)

1 out of 1 found this review helpful:

PApp-SQL (1.05)

Absolutelly useless module: it duplicate part of functionality of DBI with more typing and less features.

Sergey Fedorchenko - 2009-06-21 23:28:45
Was this review helpful to you?  Yes No


(more reviews of PApp-SQL)

1 out of 1 found this review helpful:

HTML-Tree (3.23) *****

I'm using this module for years so I thought I'd add my 5 stars review. Very well done! That's how DOM should be like if it were designed by real hackers.

Mihai Bazon - 2009-06-21 01:32:29
Was this review helpful to you?  Yes No


(more reviews of HTML-Tree)


the camel