YARH -- yet another ruby hack.
It was Marcel's idea. Blame him. I'm sat here with constructs like:
my $val = 0->true;
if ($val && $val == 0) {
print "this shouldn't happen\n";
}
And having it do what it shouldn't, or should. I'm not sure anymore. Marcel just added arbitrary runtime properties as well which is pretty cool, so things like:
$val->approximate(1);
works. And the maths stuff works as well:
$val = 5;
print $val->times(2);
yields 10, rather than the expected runtime error.
Sorry...