Acme-CPANModules-Import-CPANRatings-User-stevenharyanto

 view release on metacpan or  search on metacpan

devdata/stevenharyanto  view on Meta::CPAN


</h3>



<blockquote class="review_text">
Nice idea. Some notes: 1) to be widely used, it really needs to be very efficient; 2) if the goal is simply to objectify a hash, perhaps Hash::Objectify or Object::From::Hash or Hash::To::Object (or Data::Objectify and so on) is a more descriptive na...

</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2014-08-10T04:53:14
(<a href="/dist/Object-Anon#11872">permalink</a>)
</p>

<div class="helpfulq">

Was this review helpful to you?&nbsp;

<!-- we should add non-js links to rate stuff helpful/not helpful too... -->

<span class="helpful helpful_yes">Yes</span>
<span class="helpful helpful_no" >No</span>
<span class="thanks"></span>
</div><!-- helpfulq -->

</div><!-- review_footer -->

</div>


<div class="review" data-review="11870" data-user="10616">
<a name="11870"></a>
<h3 class="review_header">



<a href="/dist/Data-Seek">


Data-Seek</a>

   (<a href="https://metacpan.org/release/Data-Seek/">0.03</a>)



</h3>



<blockquote class="review_text">
The &quot;extremely fast and efficient&quot; claim currently doesn't hold, as this module creates a *whole* flattened tree for *every* search operation.
<br><br>A simple benchmark:
<br><br>###
<br>
use Benchmark qw(timethese);
<br>
use Data::Seek;
<br>
use Data::DPath qw(dpath);
<br>
use JSON::Path;
<br><br>my $data = { map { $_ =&gt; {map {$_=&gt;[1..4]} 1..20} } &quot;a&quot;..&quot;z&quot; };
<br><br>timethese(-0.25, {
<br><br>dseek =&gt; sub { $ds = Data::Seek-&gt;new(data=&gt;$data); $ds-&gt;search(&quot;j.1.\@&quot;)-&gt;da...
});
<br>
###
<br><br>###
<br>
Benchmark: running dpath, dseek, dseek_cacheobj, jpath for at least 0.25 CPU seconds...
<br><br>dpath:  1 wallclock secs ( 0.27 usr +  0.00 sys =  0.27 CPU) @ 8292.59/s (n=2239)
<br><br>(warning: too few iterations for a reliable count)
<br><br>dseek...
dseek_cacheobj:  0 wallclock secs ( 0.33 usr +  0.00 sys =  0.33 CPU) @ 42.42/s (n=14)
<br><br>(warning: too few iterations for a reliable count)
<br><br>jpath:  0 wallclock secs ( 0.27 usr +  0.00 sys =  0.27 CPU) @ 11711.11/s (n=3162)
<br><br>(warn...
###
<br><br>Also: 1) the syntax is rather inconsistent: ':n' for array index access, but '.@' (instead of ':@') for grabbing all elements. 2) currently cannot select subtree (must always select leaf node).
<br><br>As alternatives, I recommend the muc...

</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2014-08-10T04:37:01
(<a href="/dist/Data-Seek#11870">permalink</a>)
</p>

<div class="helpfulq">

Was this review helpful to you?&nbsp;

<!-- we should add non-js links to rate stuff helpful/not helpful too... -->

<span class="helpful helpful_yes">Yes</span>
<span class="helpful helpful_no" >No</span>
<span class="thanks"></span>
</div><!-- helpfulq -->

</div><!-- review_footer -->

</div>


<div class="review" data-review="11860" data-user="10616">
<a name="11860"></a>
<h3 class="review_header">



<a href="/dist/Games-2048">


Games-2048</a>

   (<a href="https://metacpan.org/release/Games-2048/">0.08</a>)




<img src="//cdn.perl.org/perlweb/cpanratings/images/stars-5.0.png" alt="*****">

</h3>



<blockquote class="review_text">
My favorite 2048 implementation (it's text-mode, written in Perl, uses my module Color::ANSI::Util, and what else... oh yeah, it's the only implementation where I've reached 2048 :-) ).
<br><br>One tip: enlarge the fonts of your terminal emulator (e....
</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2014-08-06T00:25:10
(<a href="/dist/Games-2048#11860">permalink</a>)
</p>



( run in 0.539 second using v1.01-cache-2.11-cpan-5511b514fd6 )