From: Tobias C. R. <tc...@fr...> - 2008-12-05 18:20:38
|
Christophe Rhodes <cs...@ca...> writes: > "Tobias C. Rittweiler" <tc...@fr...> writes: > >> * make-d-macro-char.diff >> >> Currently, invoking MAKE-DISPATCH-MACRO-CHARACTER on a character >> that's already been made a dispatch macro character results in an >> error. >> >> All other implementations I tested, do not signal an error, but just >> override a possibly existing dispatch table. >> >> I think that's sensible, as the the CLHS entry for MAKE-D-M-CHAR says >> Exceptional Situations are None. > > That is not a good enough reason for not signalling an error; the CLHS > makes no attempt to be exhaustive about exceptional situations. I'm > not at all convinced that overriding a possibly-existing dispatch > table is a sensible thing to do at all; allowing the user to delete > data doesn't sound like a win to me. It's the second paragraph of MAKE-D-M-CHAR + Exceptional Situations being None: ``Initially, every character in the dispatch table associated with the char has an associated function that signals an error of type reader-error.'' Reading both in combination makes overriding a plausible choice in my view. -T. |