Walter,
First, the "m." convention. I'm perfectly aware of "EssentialMDot" on the FoxWiki page. I'm sure that you'll agree that any convention has to have a purpose. Without such, it is meaningless.
From reading Fabio's posts, it appears that he believes that using "m.This" or "m.ThisForm" is faster than it would be without the "m.". Is this really the case? See THREAD#
895232. If it isn't then the convention is pointless. Further, because it may lead to a C5 error, why use it?
Second, on more than one occasion you've questioned whether I understand the difference between a property and an object. I most certain do, but wonder if the same holds true for you.
When we assign a property an object, it is no longer a property, but rather an object. There's no place in the VFP documentation that says an object can have an _assign method. In fact, by trying to create this sort of thing, we may be actually corrupting the object model.
As I said before, "Just because you can, doesn't mean you should". I can raise all sorts of nasty errors in a variety of languages by doing things I know I shouldn't. I don't want the compiler telling me: "That's a no-no". I can figure that out for myself. In this instance, the same holds true.
George
Ubi caritas et amor, deus ibi est