A FatRat is a rational number stored with arbitrary size numerator and
denominator. Arithmetic operations involving a FatRat and optionally Int
or Rat objects return a FatRat, avoiding loss of precision.
Since, unlike Rat, FatRat arithmetics do not fall back Num at some
point, there is a risk that repeated arithmetic operations generate
pathologically large numerators and denominators.
There are two common ways to generate FatRat objects: through the
FatRat.new(Int, Int) constructor, which generates them from numerator and
denominator, or by calling the .FatRat method on an Int or Rat
object.
Methods
method raku
multi method raku(FatRat:D: --> Str:D)
Returns an implementation-specific string that produces an equivalent object
when given to EVAL.
say FatRat.new(1, 2).raku; # OUTPUT: «FatRat.new(1, 2)»