So, would it have things like

    $i = $j /E $k
    $i = $j %E $k

which would both throw and exception if $k == 0 whereas

    $i = $j / $k
    $i = $j % %k

would not throw an exception and would instead return NaN

-----Original Message-----
From: Dan Sugalski [mailto:[EMAIL PROTECTED]
Sent: Tuesday, August 24, 2004 11:29 AM
To: [EMAIL PROTECTED]
Subject: Low-level math op behavior


Okay, since we're finally talking defined math semantics, lets talk 
the low-level ops.

All our math ops right now just quietly do their thing. If values 
wrap, truncate, or otherwise fuzz out, we don't do anything special. 
This is fine, and fast, and what many languages want. It is, however, 
reasonable to have math ops that are a bit higher-level -- basically 
throwing exceptions if something exceptional happened rather than 
quietly proceeding.

What I'm thinking is that we add an O or X (or E, I don't care. I 
suppose we could get more verbose there too) variant to the basic 
math ops which checks the result for validity and throws an exception 
on something exceptional happening.

Only for the basics (add, subtract, multiply, divide, possibly 
modulus) but it ought to be useful. Folks think it's worth it?
-- 
                                Dan

--------------------------------------it's like this-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                       teddy bears get drunk


 The information contained in this e-mail message is privileged and/or
 confidential and is intended only for the use of the individual or entity
 named above.  If the reader of this message is not the intended recipient,
 or the employee or agent responsible to deliver it to the intended 
 recipient, you are hereby notified that any dissemination, distribution or 
 copying of this communication is strictly prohibited.  If you have received 
 this communication in error, please immediately notify us by telephone
 (330-668-5000), and destroy the original message.  Thank you.  


Reply via email to