Attila Lendvai wrote:
Something is wrong with EVAL-WHEN, and I haven't time to look after this. Might be a CLISP bug (feature interaction between LOAD :compiling and EVAL-WHEN).
the strange thing is that it needed a :execute to make (load :compile t) work, no idea why.
BTW, CLHS contains exactly this example of modifying the readtable with EVAL-WHEN. Their example has all three of :load- :compile- :evaluate -- I'm unsure why, because in today's implementations, it seems like less situations should be required [*]. Maybe they wanted to play safe? [*] Seemingly, it's only during READ-time for either loading (interpreted?) or compiling that one needs to set the read-table. There should be no need to generate code for this in the binary fasl: it's all gone then, one would think. Regards, Jörg Höhle.