Acme-CPANModules-Import-CPANRatings-User-davidgaramond

 view release on metacpan or  search on metacpan

lib/Acme/CPANModules/Import/CPANRatings/User/davidgaramond.pm  view on Meta::CPAN

package Acme::CPANModules::Import::CPANRatings::User::davidgaramond;

use strict;

our $AUTHORITY = 'cpan:PERLANCAR'; # AUTHORITY
our $DATE = '2023-10-29'; # DATE
our $DIST = 'Acme-CPANModules-Import-CPANRatings-User-davidgaramond'; # DIST
our $VERSION = '0.002'; # VERSION

our $LIST = {description=>"This list is generated by scraping CPANRatings (cpanratings.perl.org) user page.",entries=>[{description=>"\nOk, it's not 2004 anymore, I suggest we retire or start to deprecate this module? This module now requires Perl 5....

1;
# ABSTRACT: List of modules mentioned by CPANRatings user davidgaramond

__END__

=pod

=encoding UTF-8

=head1 NAME

Acme::CPANModules::Import::CPANRatings::User::davidgaramond - List of modules mentioned by CPANRatings user davidgaramond

=head1 VERSION

This document describes version 0.002 of Acme::CPANModules::Import::CPANRatings::User::davidgaramond (from Perl distribution Acme-CPANModules-Import-CPANRatings-User-davidgaramond), released on 2023-10-29.

=head1 DESCRIPTION

This list is generated by scraping CPANRatings (cpanratings.perl.org) user page.

This list is generated by scraping CPANRatings (cpanratings.perl.org) user page.

=head1 ACME::CPANMODULES ENTRIES

=over

=item L<Perl6::Say>

Author: L<CHORNY|https://metacpan.org/author/CHORNY>

Ok, it's not 2004 anymore, I suggest we retire or start to deprecate this module? This module now requires Perl 5.8, and Perl 5.10+ has &quot;say&quot; built in, so basically this is a module specifically for 5.8 I<only>.


Rating: 4/10

=item L<Data::Rmap>

Author: L<BOWMANBS|https://metacpan.org/author/BOWMANBS>

I was looking for a simple way to transform all DateTime objects in my data structure into string (e.g. &quot;2010-07-06&quot;). After failed experiment with Data::Walk and dumping Data::Transformer due to unsightly interface, I found Data::Rmap. It'...
<br><br>My only complaint would be the name: it's not immediately searchable (I was searching for 'data modify', 'data walk', 'data traverse', 'modify data inplace', and the like). Also, the name &quot;map&quot; suggests that the function will return...


=item L<Data::Walk>

Author: L<GUIDO|https://metacpan.org/author/GUIDO>

Nice interface (the analogy to File::Find certainly helps) and very straightforward to use, but one thing I can't do is modify the data inplace. I spent about an of hours trying to make Data::Walk do inplace modification, but finally gave up and use ...


Rating: 8/10

=item L<Data::Transformer>

Author: L<BALDUR|https://metacpan.org/author/BALDUR>

Frankly, I don't like the interface. I suspect most people would like to just specify one callback function instead of one for each type. Also I don't like having to work with $$_ ($_ should perhaps be aliased to the real data). As the Data::Transfor...
<br>


Rating: 4/10

=item L<Data::Traverse>

Author: L<FRIEDO|https://metacpan.org/author/FRIEDO>

I find the interface rather unintuitive, because I expect data to be in $_ (instead of type). For those looking for alternatives, see also Data::Walk (which provides breadth-first as well as depth-first) and Data::Rmap (which provides inplace modific...
<br>


Rating: 4/10

=item L<Regexp::Grammars>

Author: L<DCONWAY|https://metacpan.org/author/DCONWAY>

Parse::RecDescent is dead. Long live Regexp::Grammars!
<br><br>As Damian himself has said/presented, RG is the successor for the popular PRD.
<br><br>The docs of RG is not as complete (yet) as PRD's.
<br><br>The PRD grammar syntax is also nicer/cleaner (due to RG having some restrictions because you are writing your grammar inside a regex).
<br><br>RG doesn't (yet) have some of the features of PRD, like &lt;leftop&gt; and &lt;rightop&gt;. But it does have most of the features, and add a few of its own.
<br><br>RG performs significantly faster than PRD.
<br><br>In general, whenever you consider PRD to be a good candidate of tool to solve your problem, consider using RG.
<br><br>But you need Perl 5.10+ to use RG, as it depends on regex features not found in older Perl.
<br>


Rating: 8/10

=item L<Parse::RecDescent>

Author: L<JTBRAUN|https://metacpan.org/author/JTBRAUN>

Responding to previous comment from MB: &quot;Have you the time to do this Damian?&quot; The answer is yes, in the form of Regexp::Grammars, which Damian said himself is the successor of Parse::RecDescent.
<br><br>To give credit to this module, PRD is very featureful and easy to use, it's very convenient to generate parsers, and the docs is quite complete. The only problem with it is, as many have pointed out, speed.
<br><br>It is I<seriously> slow, with parser generation can take up to half a second on my laptop with a moderate grammar (200-400 lines) and parsing can take seconds even minutes for a moderately long string. It is orders of magnitude slower than ot...
<br><br>For alternatives, try Regexp::Grammars. (Or Parse::Yapp or Parse::EYapp, as other reviewers have written.)


Rating: 6/10

=item L<Test::Seperate>

Sorry, just commenting the name, shouldn't it be Separate?


=item L<File::Size>

Author: L<OFER|https://metacpan.org/author/OFER>

Frankly I prefer the name and interface of Filesys::DiskUsage. Sadly, despite the docs mentioning &quot;blocks&quot;, this module doesn't really count block usage like the Unix &quot;du&quot; command, because it doesn't take multiple hard links into ...
<br><br>Even more sadly, Filesys::DiskUsage doesn't either.
<br><br>I guess I'll have to do with 'system &quot;du $file&quot;' command for now.
<br>


Rating: 4/10

=item L<DateTime>

Author: L<DROLSKY|https://metacpan.org/author/DROLSKY>

I<THE> definitive date/time handling module in Perl (and even maybe in all major programming languages). Can't believe I went through all the pain of reinventing the wheel, and using various date/time modules of various quality &amp; interface. If on...
<br><br>Look no more, DateTime it is.
<br>


=item L<Data::Rx>

Author: L<RJBS|https://metacpan.org/author/RJBS>

I've been mulling over writing this kind of module (planning to call it Schema::Nested or something), but never got around to do it. Thankfully somebody stepped up and did it! Keep up the good work, will be looking forward to future releases (especia...
<br>


=item L<DBI::Mysqlsimple>

I agree with the previous reviewer. IMO, overall this module is not necessary. Plain DBI is actually simple enough for simple cases. Maybe the author of Mysqlsimple did not realize this. Let's compare:
<br><br>* Retrieving a single row:
<br>
Mysqlsimple: my ($v1,$v2) = $db-&gt;get_row(&quot;select v1,v2 from table&quot;);
<br>
DBI: my ($v1, $v2) = $dbh-&gt;selectrow_array(&quot;select v1,v2 from table&quot;);
<br><br>* Retrieving a single row (with params):
<br>
Mysqlsimple: my ($v1,$v2) = $db-&gt;get_row(&quot;select v1,v2 from table where cond1=? and cond2=?&quot;, [$cond1,$cond2]);
<br>
DBI: my ($v1,$v2) = $db-&gt;selectrow_array(&quot;select v1,v2 from table where cond1=? and cond2=?&quot;, {}, $cond1,$cond2);
<br><br>* Retrieving all rows with params:
<br>
Mysqlsimple: my $rows = $db-&gt;get_rows(..., [$param1, $param2]);
<br>
DBI: my $rows = $dbh-&gt;selectall_arrayref(..., {}, $param1, $param2);
<br><br>* do() with params:
<br>
Mysqlsimple: my $rows = $db-&gt;do(..., [$param1, $param2]);
<br>
DBI: my $rows = $dbh-&gt;do(..., {}, $param1, $param2);
<br><br>As you can see, the differences are minimal.
<br>


Rating: 2/10

=item L<Carp::Always>

Author: L<FERREIRA|https://metacpan.org/author/FERREIRA>

Modules like this deserve to be more well-known and should perhaps included in core Perl (or even become a command-line switch). I'm never comfortable with Carp and all the &quot;complexity&quot; of using it. What I wanted is simple, when debugging I...
<br><br>Call me inflicted with Ruby- or Python-envy, but it's been so ridiculous wanting to print out stack traces in Perl. I don't want to have to change/rewrite all my die()'s to croak() or confess()! And what about library codes which use die()?
<br><br>Thank God somebody wrote Carp::Always.


=item L<Data::Dump>

Author: L<GARU|https://metacpan.org/author/GARU>

I've envied Ruby users which can use just &quot;p&quot; to print out data structures instead of us which used to have to do 'use Data::Dumper; print Dumper(...);'. And even then there's this '$VAR1 = ' garbage which 99% of the time is not wanted. Whi...
<br><br>With Data::Dump we're still a bit behind but closer. One rant is the with the doc: the pp() function should perhaps be advertised more prominently, since I suspect that's what most users want most of the time.


=item L<V>

Author: L<ABELTJE|https://metacpan.org/author/ABELTJE>



( run in 0.395 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )