On Thu, Oct 1, 2009 at 8:49 PM, Nico de Jager ndj@bitart.cc wrote:
No, it is as intended. Please correct me if I am having a brain fart.
My bad. I didn't look closely enough.
The first patch I sent to Edi privately, was as the one at the bottom. But isn't
#+:lispworks4 == #-(or :lispworks5 :lispworks6) and #-:lispworks4 == #+(or :lispworks5 :lispworks6)
when we are only considering version 4, 5 and 6? In fact, the patch at the top is better, since when LispWorks 7.x comes out the patch above will already work as it covers versions 4 and higher, but the patch below will have to be amended, since it only covers version 4, 5 and 6. Which one is clearer, is subjective - I like the one at the top because the exceptions is specifically for LispWorks4 and for the reason described in the previous sentence.
What I don't like about this is that it doesn't take LW3 into account... :)
Only half joking, really. Starting with LW4 seems a rather arbitrary assumption to me although the code very likely won't work with LW3 anyway, but the code isn't self-documenting anymore. #-:lispworks4 says "for all except LW4" while you actually wanted to say "for LW5 and LW6 and maybe LW7 as well".
B.t.w. the double #+:lispworks5 #+:lispworks5 in the original code is a (harmless) mistake, correct?
No, it's on purpose. It affects the /two/ forms following it and your patch must also take care of two forms.
Thanks, Edi.