On Sunday 19 October 2008 18:08:19 Thomas Lord wrote:
> On the one hand, you don't want to allow 0 or 1 argument because
> you see < as a binary relation and those cases don't make sense
> unless we're treating < as sequence predicate.  You want the error
> checking to rule out 0 or 1 arguments to avoid "surprise" to
> someone who sees a binary operator there.
>
> On the other hand, you'll allow 3 arguments because it is
> convenient and in spite of the fact that it rules out error checking
> for someone who sees a binary operator there.

For me, < is a test for a _relationship between numbers_ (which can be 
extended transitively).

The word "between" implies more than one.

I do not see a "natural" numeric relationship between non-numbers or between a 
number and a non-number.  I don't know what this would model [in Scheme].  I 
can see building a symbolic math library where extensions might make sense in 
varying contexts, but not in basic arithmetic.

> > I don't consider (low-bound x high-bound) to be a sequence
>
> Parameter lists satisfy any reasonable axiom system for finite
> sequences so they are such regardless of whether or not you give
> the matter your consideration.
>
> But, now you have a "consideration deficit".  

This is correct.

I also do not consider +nan.0, +inf.0, and -inf.0 as numbers.  I consider 
them "off-scale" markers.  I think that testing for (= +nan.0 +nan.0) is 
silly and should raise an exception.  [(eq? +nan.0 +nan.0) is sensible].

I realize this is not a global viewpoint.

> Your selection of what to call an error seems to me on a shaky
> ground of trying to predict "common cases" rather than asking
> how to make clean models.

Being is being related.  Numeric "relations" to "non-being" don't make sense 
to me.  That a numeric predicate applied "out of context"  e.g. (< 'a "foo") 
or (< 2) or (=) should raise an exception seems natural to me.

I am expressing my opinion.


$0.02
-KenD

_______________________________________________
r6rs-discuss mailing list
r6rs-discuss@lists.r6rs.org
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to