crenz has asked for the wisdom of the Perl Monks concerning the following question:
Even after programming Perl for quite a few years, you can still be bitten by unexpected behaviour exhibited by Perl's built-in operators. Today, I was trying to calculate the modulo of several values. The catch: The modulus is not an integer, but a fraction! I expected this to just work but apparently, it does not:
$ perl -e 'print 4 % 0.5, "\n";' Illegal modulus zero at -e line 1. $ perl -e 'print 4 % 2.5, "\n";' 0
I would have expected these snippets to print 0 and 1.5, respectively.
In my application, I can circumvent this easily, but I'm just wondering: How come Perl isn't just doing “the right thing” here? Just to check my own sanity, I tried the same calculations using octave (using the rem function), which deals with fractions no problem. MS' documentation for JScript also lists an example using fractions. Given that this behaviour is not documented, I'd consider it a bug in the 5.8.1 version that I use.
Update: Thanks, I overlooked the part where it says “integer operands”… I still think it's a default functionality that should be implemented, though. If I want C compatibility, I'll use C ;-).
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Modulo of fraction?
by Ido (Hermit) on Jun 27, 2005 at 13:55 UTC | |
Re: Modulo of fraction?
by Limbic~Region (Chancellor) on Jun 27, 2005 at 13:56 UTC | |
by Ido (Hermit) on Jun 27, 2005 at 14:37 UTC | |
by Limbic~Region (Chancellor) on Jun 27, 2005 at 14:43 UTC | |
Re: Modulo of fraction?
by herveus (Prior) on Jun 27, 2005 at 13:58 UTC | |
Re: Modulo of fraction?
by chipmonkey (Initiate) on Jun 27, 2005 at 16:33 UTC | |
Re: Modulo of fraction?
by Old_Gray_Bear (Bishop) on Jun 27, 2005 at 16:37 UTC | |
by shemp (Deacon) on Jun 27, 2005 at 23:45 UTC | |
by CountZero (Bishop) on Jun 28, 2005 at 09:10 UTC | |
by kaif (Friar) on Jun 28, 2005 at 14:50 UTC | |
Re: Modulo of fraction?
by fglock (Vicar) on Jun 27, 2005 at 19:24 UTC | |
Re: Modulo of fraction?
by ambrus (Abbot) on Jun 27, 2005 at 14:08 UTC | |
by ikegami (Patriarch) on Jun 27, 2005 at 15:38 UTC | |
by crenz (Priest) on Jun 27, 2005 at 16:35 UTC | |
by ikegami (Patriarch) on Jun 27, 2005 at 16:40 UTC | |
Re: Modulo of fraction?
by TedPride (Priest) on Jun 27, 2005 at 18:28 UTC | |
Re: Modulo of fraction?
by Anonymous Monk on Nov 24, 2009 at 17:01 UTC |