>Here is the link I mentioned earlier
http://www.berezniker.com/display/VFP/Difference+between+FUNCTION+and+PROCEDURE+statementsYes, the article reflects my own understanding.
BTW, unlike Sergey, my personal preference is to use only one of the two keywords (in my case, I use FUNCTION).
As I mentioned before, I find the distinction of function vs. procedure, simply because one returns a value and the other doesn't, quite arbitrary. You might just as well use one name for a function/procedure that accepts zero parameters, another for a function/procedure that accepts exactly one parameter, etc.!
The basic idea of a function (or procedure, or subroutine, or method) is simply a piece of code that does a specific task, and that can be invoked from several places.
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)