I'm just relating personal experience, which is that when I need
integer division, I usually need to express the rounding mode too. So
it seems odd to me to provide truncate as an operator, whereas the
other rounding modes require a function call. (Perhaps I would be
less paranoid if I had not been repeatedly bitten by the C 'standard'
which leaves % and / implementation-dependent over parts of their
domain.) I'd rather see the rounding functions extended to 2-argument
versions.
The existence of % does support having its complement, in the absence
of multiple-value returns.
I don't understand your remark about / rounding. Isn't it just inexact?
On 2008-03-06, at 09:08 EST, Lars T Hansen wrote:
> Tucker,
>
> I detect sarcasm in your reply, but maybe I'm just being paranoid
> now...
>
> R4RS Scheme:
>
> "For integers n1 and n2 with n2 not equal to 0,
>
> (= n1 (+ (* n2 (quotient n1 n2)) (remainder n1 n2)))"
>
>
> E262-3 (the % operator):
>
> "In the remaining cases, where neither an infinity, nor a zero, nor
> NaN is involved, the floating-point remainder r from a dividend n and
> a divisor d is defined by the mathematical relation r = n − (d
> * q)
> where q is an integer that is negative only if n/d is negative and
> positive only if n/d is positive, and whose magnitude is as large as
> possible without exceeding the magnitude of the true mathematical
> quotient of n and d."
>
> Div truncates and the definition is machine independent and
> complements that of %.
>
> Since / rounds (among other operators) but there is no way to control
> its rounding mode, I don't know why 'div' should have that control
> either, necessarily.
>
> --lars
>
> On 3/6/08, P T Withington <[EMAIL PROTECTED]> wrote:
>> Don't you want to be able to express rounding mode? And if so, do
>> you
>> need 4 operators? floor/, ceiling/, round/, truncate/? Oh, maybe
>> they
>> should be named /-, /+, /~ and /0. Yow.
>>
>> Is div truncate/, or round/? I can never remember.
>>
>>
>> On 2008-03-05, at 18:18 EST, Lars Hansen wrote:
>>
>>> Just \ would work if we're happy with not allowing its use at the
>>> end of
>>> a line. A little dodgy, syntactically, IMO. I've advocated "\\" in
>>> the
>>> past, which by normal lexing rules would be unambiguous by the
>>> longest-token lexing rule.
>>>
>>> ("/." is ambiguous, consider 3/.5.)
>>>
>>> --lars
>>>
>>>
>>> ________________________________
>>>
>>> From: Michael O'Brien [mailto:[EMAIL PROTECTED]
>>> Sent: 5. mars 2008 15:06
>>> To: Lars Hansen
>>> Cc: TNO; [email protected]
>>> Subject: Re: New Operator
>>>
>>>
>>> I'll vote for that also. It improves readability quite a bit.
>>>
>>> But is there a better operator than "\"?
>>>
>>> Shame "//" is taken. What about "/."
>>>
>>> Michael
>>>
>>> Lars Hansen wrote:
>>>
>>> I have been pushing for this in the past on several
>>> occasions, but enthusiasm in the WG has been scant, unfortunately.
>>> Maybe I haven't been pushing hard enough.
>>>
>>> --lars
>>>
>>>
>>> ________________________________
>>>
>>> From: [EMAIL PROTECTED]
>>> [mailto:[EMAIL PROTECTED] On Behalf Of TNO
>>> Sent: 5. mars 2008 14:13
>>> To: [email protected]
>>> Subject: New Operator
>>>
>>>
>>> Is it too late to propose an integer division
>>> operator into the spec? I do quite a bit of WSH programming in both
>>> VBScript an JScript and sometimes its a bit of an irritant during a
>>> translation, it would be nice to see this operator "\" available in
>>> the
>>> new ECMAScript instead of having to rely on more inefficient
>>> workarounds:
>>>
>>> VBScript:
>>>
>>> Dim result
>>> result = 19 \ 4 '(result = 4)
>>>
>>> JScript:
>>>
>>> http://www.codingforums.com/showthread.php?t=58799
>>>
>>>
>>> ________________________________
>>>
>>>
>>> _______________________________________________
>>> Es4-discuss mailing list
>>> [email protected]
>>> https://mail.mozilla.org/listinfo/es4-discuss
>>>
>>>
>>> _______________________________________________
>>> Es4-discuss mailing list
>>> [email protected]
>>> https://mail.mozilla.org/listinfo/es4-discuss
>>
>> _______________________________________________
>> Es4-discuss mailing list
>> [email protected]
>> https://mail.mozilla.org/listinfo/es4-discuss
>>
> _______________________________________________
> Es4-discuss mailing list
> [email protected]
> https://mail.mozilla.org/listinfo/es4-discuss
_______________________________________________
Es4-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es4-discuss