The issue is due to there being a multi new [^1] that takes a Real min value and *coerces* the max value to a real. So in the case described in this ticket, it will coerce the Str max to Int, and by the time we get to .rand, both args are Ints.
As suggested on IRC [^2], we can try removing that coercion and see if something explodes or not, but I'm unsure of the reasons that coercion is there. [^1] https://github.com/rakudo/rakudo/blob/aceb4af2/src/core/Range.pm#L51 [^2] http://irclog.perlgeek.de/perl6/2016-09-04#i_13145737
