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)).