> On Sat, Jan 24, 2009 at 9:08 PM, Alexander Gladysh <
agladysh@gmail.com> wrote:
>> In Lua "to return zero values" is the same as to return nil.
> No, they are not the same. The number of return values from a function
> call is corrected to number of results which the caller is expecting
> either by appending nils, or truncating the last value(s). In many
> contexts, like assigning the results of a function to variables, or
> performing a table index on the result of a function, the number of
> results is set explicitly by the caller. In other contexts, like the
> end of an argument list for function calls and table constructions, no
> appending or truncating is done.
>
> Hence the visible behaviour of returning zero values is the same
> visible behaviour as returning nil, in certain contexts. In all
> contexts, the non-visible behaviour is different, and in some
> contexts, the visible behaviour is different.