OR evaluates until non nil and it drives se7en mad :)

That reminds me, I need to have some more t-shirts printed

Alright, now you're just using OR on purpose.
And for the record I only have a problem with how you are using it (global vars; recalling previous entries is good in all...in moderation. and if you eliminate the need for global vars you can use the SETQ-COND construct). But part of this gets into that localization-global vars discussion where we "discovered" that there really isnt anything like "hygienic variable declaration" in AutoLisp so i'll leave you guys alone.
T-Shirts?! Haven't I spawned two now?