Mike,
Paul Vlad is mistaken. If a variable is released when a routine ends then it is
NOT PUBLIC. The only thing that makes a public different than a private is that it outlives its creating routine. If it doesn't outlive the routine then it is either private or local. If it can be seen and manipulated by other routines called from the creating one, then it is private. If it is visible ONLY to the creating routine and not anyother routines anywhere, then it is LOCAL.
Variables in VFP are PRIVATE by default unless they are explicitly declared with some other scoping. There is no "strange beast" related to variables that have not been declared, they are private. They act like private, they look like private, they last like private, they ARE private.