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

Multiple values for R4RS.

    Ah, but I can ask (and (pair? x) (pair? (cdr x))), and if this is #t,
    then I can be certain that (cddr x) won't error.

Similarly, I can ask

(and (accepts? p 3) (accepts? cons 3))

I don't see the difference.

	    Your argument seems to be that ACCEPTS? is an ill-defined concept ...

    My argument is that "accepts?" is virtually meaningless, since it is
    a superficial property of the outermost level of the procedure, and there
    is no way to extend it further in.  If "accepts?" returns #t, so what?

It is only meaningless if the implementor or the programmer purposely
decide to make it unusable.  I listed an additional constraint that
would make ACCEPTS? valid in the cases that I'm concerned about here.
I don't care whether you chose to write all your code differently and
therefore make it unusable in YOUR code.  I want to be able to use it
on implementation provided procedures and on MY procedures, which I'll
carefully write so that it is meaningful.