Am 17.11.2010 10:31, schrieb Kris Shannon:
A recent rakudo commit [1] is a quick fix for #78896 [2] to allow
exponentiation of Duration's.
And it did so with a real world use case in mind.
I'm uneasy with allowing this and I think the spec probably meant not
to but is badly worded [3]:
Durations allow additive operations with other durations, and allow
any numeric operation with a number as the other argument:
$duration * $duration # WRONG, durations aren't geometric
$duration * 2 # ok, a duration twice as long
2 * $duration # same
What are your thoughts?
I've summarized my thoughts here, before I read your email:
http://perlgeek.de/blog-en/perl-6/real-world-strikes-back.html
Another example: current Duration % Duration is forbidden. But I have a
very good use case:
suppose I want to organize a 60 minutes session, and it's filled with
presentations, each 8 minutes long. How long do I have for the
introduction, if I fit in as many presentations as possible?
The operation $session_duration % $presentation_duration answers me
that. Why am I not allowed to carry out that operation? Because some
designer thought I'd be better off not doing that operation. Wow,
awesome reason</sarcasm>.
[1]
https://github.com/rakudo/rakudo/commit/d9e22463479927fa8f1f594753979022de35970d
[2] http://rt.perl.org/rt3/Ticket/Display.html?id=78896
[3]
https://github.com/perl6/specs/commit/32abb95b9776e1cb7672c8a6a77612c86b37aea2#L0R1333