> The other point is, that you said that for references we do not need the var 
> keyword when passing data to procs -- we can modify the fields of object 
> passed as references always. Well, beginners may be confused: Is the most 
> significant advantage of references that we don't have to type that var 
> keyword in the procedure signature? So why not always us references as done 
> in Java and Python, so that we never would have to use a var parameter.

That's a good question that always bother me. The only justification I found 
for keeping `var` parameters is that you can't call the proc that defines them 
with `nil` or constant values. So you provide a stricter API contract than 
declaring them with `ref`.

Reply via email to