@N[$i] += $temp;, where
0.00686851014887172. This wasn't one of my fancy overloaded operators, it was a basic Perl 6 numeric operator. What could go wrong?
Well, I added a bunch more stuff to the say. And it turns out we are adding two Rats, 424/61731 and 832/61731. What could go wrong?
> say 424/61731 + 832/61731
too many positional arguments: 3 passed, 1 expected
If you look into
infix:<+>(Rat, Rat), it just does a naive fractional add, relying on
Rat.newto reduce the fraction. The problem here is that means the denominator of our new fraction starts its life as
61731 * 61731.
> say (61731 * 61731) div 246924
No applicable candidates found to dispatch to for 'infix:div'
I'm not sure what the best approach to fixing this is. Obviously I can change my code to do Nums. But I think the first step is to file a Rakudo bug.