Skip to content

Commit b36e80b

Browse files
author
Geoffrey Broadwell
committed
Add first two Rat microbenchmarks
1 parent b933f73 commit b36e80b

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

microbenchmarks.pl

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,4 +320,20 @@
320320
perl6 => 'my %h; for ^SCALE { %h{$_} = $_ }; for %h.kv -> $k, $v { $k == $v }; 1',
321321
nqp => undef,
322322
},
323+
{
324+
name => 'rat_mul_div_cancel',
325+
tags => [qw( for rat )],
326+
scale => 1 << 10,
327+
perl5 => 'use Math::BigRat; my $r = Math::BigRat->new(1); for (1 .. SCALE) { $r *= $_; $r /= $_ + 1 }; say "<$r>"',
328+
perl6 => 'my $r = 1.0; for 1 .. SCALE { $r *= $_; $r /= $_ + 1 }; say $r.perl',
329+
nqp => undef,
330+
},
331+
{
332+
name => 'rat_harmonic',
333+
tags => [qw( for rat fatrat )],
334+
scale => 1 << 7,
335+
perl5 => 'use Math::BigRat; my $r = Math::BigRat->new(0); for (1 .. SCALE) { $r += Math::BigRat->new(Math::BigInt->new(1), Math::BigInt->new($_)) }; say $r',
336+
perl6 => 'my $r = FatRat.new(0, 1); for 1 .. SCALE { $r += 1 / $_ }; say $r.perl',
337+
nqp => undef,
338+
},
323339
]

0 commit comments

Comments
 (0)