This page is part of the web mail archives of SRFI 38 from before July 7th, 2015. The new archives for SRFI 38 contain all messages, not just those from before July 7th, 2015.
>>>>> "Marc" == Marc Feeley <feeley@xxxxxxxxxxxxxxxx> writes: Marc> (parameterize ((write-shared #t) Marc> (write-radix 16) Marc> (write-prettily #t)) Marc> (write X)) >> >> Except your old code doesn't know anything about the presence of all >> these flags. In fact, every new feature controlled via these >> parameters might break the old code. Marc> Could you explain why? I explicitly said: "But this will not happen Marc> if you code your calls to write in this style: ...", meaning that only Marc> "write" is in the scope of the parameterize. There is no old code Marc> affected by the parameterize! Yes, there is, namely if you have this in new code ... (parameterize ((write-symbols-all-lower-case #t)) (old-code-procedure)) ... and this in old code: (define (old-code-procedure) (write (string->symbol "FooBarBaz"))) So PARAMETERIZE has the wrong semantics to enforce what you're suggesting, and there's too much potential for foot-shooting. -- Cheers =8-} Mike Friede, Völkerverständigung und überhaupt blabla