> this is a variable, but is not reserved
You are wrong. "THIS" has been a reserved word since time immemorial (since its introduction in VFP3, to be precise) and using it for any kind of user-defined name - alias, field name, memory variable, function name etc. - is invoking undefined behaviour. Whatever Fox does in such a situation is implicitly correct because by using this name in any manner except the proscribed one you leave the realm of defined/documented behaviour.
While I do
believe in rigorous emming and even though I think that Fox's list of reserved words is a couple orders of magnitude larger than it needs to be (
extremely sloppy work by the devs!) our coding standard follows the letter of the book with regard to THIS, THISFORM and THISFORMSET. Any use of these three names for user-defined things like aliases or memory variables is strictly prohibited, and uses of the predefined identifiers are not required to be emmed (in our coding standard, that is). Since the list of words is not only finite but very, very small, and since the words are reserved anyway I think this strategy has an extremely low probability of failure.