Re: SRFI-10 Error reporting
Richard Kelsey 01 Dec 1999 20:02 UTC
Date: Wed, 1 Dec 1999 19:26:47 GMT
From: xxxxxx@pobox.com
Suppose an application reads an input data stream:
1.0 2.0 3.0 #,(pi) 4.0
Suppose a reader failed to make sense of the #,(pi) form, and per
SRFI-10 suggestion, has read is as (pi). It appears likely that the
application will detect this error as the application expects the read
function return inexact numbers rather than lists.
It's likely that the application will detect it, but it is far
from guarenteed. Consider the following.
(let ((pi (lambda () 3.1)))
(list 1.0 2.0 3.0 #,(pi) 4.0))
Just think how hard it will be to track down the problem of `pi'
not being a legitimate ,# tag.
The more I write about this the more I wonder why I have put that
phrase about erroneous #,() forms in the first place. I really don't
want to get into reading exceptions, syntax error reporting and all
that.
This should be especially true because SRFI-10 doesn't have anyway
of defining new ,# tags. Why talk about an error that you provide
no way to commit?
-Richard Kelsey