Here's another clue on how VFP looks at the difference between the two, a FUNCTION can end with an ENDFUNC, a RETURN, and even an ENDPROC, and of course a PROCEDURE can too. So:
do a
do b
proc a
wait window 'a'
endfunc
func b
wait window 'b'
endproc
is perfectly legal.