random-state.net

Nikodemus Siivola

<< next | top | previous >>

Why I Don't Like EVAL-ALWAYS #
hacking, May 2nd 2007

Macros like EVAL-ALWAYS and its kissing cousin DEFCLASS* really tick me.

Why? Because they aren't abtractions or provide any extra information: they do exactly the same as their regular counterparts, except as a reader I have to macroexpand them to be sure (or check the definition — same difference.) Furthermore, they cause me to suspect that the author hasn't really though about the EVAL-WHEN situations that apply, or isn't really sure what the slots should look like.

I strongly believe that if you find yourself hoping for either, you should use MACROLET, or alternatively define a global definer macro that suits your needs.

End of sermon. Besides, I hear using them makes you go blind.