On Feb 26, 2007, at 11:48 AM, Pascal Costanza wrote:

By your accounting, I am in that list. I don't regard myself in that list, so I am sorry if I have given the wrong impression here. I'll try to clarify: Implementations should be given discretion to both run parts of programs even if other parts appear to be incorrect, as well as to completely reject running programs that are provably incorrect. I regard this a quality feature of an implementation, and it should be left to the "market" which approach "wins." It shouldn't be part of a language specification, IMHO.

Just to be clear, do you mean "...as well as to completely reject running [entire] programs that [contain parts that] are provably incorrect?" That's the distinction I'm worried about.

I don't mind if this program can't run:

  )(*$#%()*#$

I just want to be able to test FACTORIAL in this program without having to fix FOO:

  (define (factorial n) (if (< n 2) 1 (* n (factorial (- n 1)))))

  (define (foo) (factorial))

Of course, this is a contrived example. This problem only becomes important when FOO is a large body of code, not just a one-liner.

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to