[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: arithmetic issues

This page is part of the web mail archives of SRFI 77 from before July 7th, 2015. The new archives for SRFI 77 contain all messages, not just those from before July 7th, 2015.



   Date: Sun, 23 Oct 2005 23:13:06 -0700 (PDT)
   From: bear <bear@xxxxxxxxx>

   Okay, how about a library function:

   (define NaN (lambda()
   "return a NaN for use in other functions,
    because there is no read/write syntax for NaN."
   (/ 0.0 0.0)))

   then you can write:

      (if <check-arguments>
          <calculate-results>
          (NaN))

   So your code is clear and readable, and yet you
   don't have a read/write syntax that makes it unclear
   whether read is failing or just reading an error.

If Aubrey Jaffer's suggestion of NaNs encapsulating information about
their origin be adopted, I think it would make sense to extend the NAN
procedure to accept more arguments, of any nature, to specify any
information whatsoever about the condition, like T's UNDEFINED-VALUE
mechanism.  Of course, one possible value would be (LAMBDA ARGS (/ 0.0
0.0)).