3.4.10 –
Function Calls
The form
functioncall ::= prefixexp ‘:’ Name args
Arguments have the following syntax:
args ::= ‘(’ [explist] ‘)’
args ::= tableconstructor
args ::= LiteralString
can be used to call "methods".
A call v:name(args)
is syntactic sugar for v.name(v,args)
,
except that v
is evaluated only once.
-------------------
Let v be a usardata with a unary method, then
v:abs() is a syntatic sugar for v.abs(v)
v:reduce() is a syntatic sugar for v.reduce(v)
etc
This notation is very unpleasant. There is a problem if this behaviour of function calls
v:abs is a syntativ sugar for v.abs(v)
v:reduce is a syntatic sugar for v.reduce(v)
was valid?
If not, I really appreciate this new flavor.
--
Rodrigo Azevedo Moreira da Silva