No need to initialise the function return to "" - in fact it is better if you don't as the return will be type "Empty" which is more correct than a zero length string.
 Code:
Foo
Bar

"Foo returns '" Foo "' Type=" VarTypeName(Foo) ?
"Bar returns '" Bar "' Type=" VarTypeName(Bar) ?

Function Foo() EndFunction
Function Bar()  $Bar="" EndFunction


 Quote:
D:\temp>kix32 nr.kix
Foo returns '' Type=Empty
Bar returns '' Type=String