-- Here is a very poor attempt :)
local function infix(...)
local args = {...}
local nargs = #args
local r = args[1]
for k=2,nargs,2 do
r = args[k](r, args[k+1])
end
return r
end
local function add(a,b)
return a + b
end
print( infix( 12 ,add, 3 ,add, 10 ) )
On 12/17/11 9:23 PM, Xavier Wang wrote:
hi robero and list,
i'm inspired by the post about implement c enum. somebody said the
getflags function shoud return a userdata to implement a contains
function. i think its a good idea, excerpt a details: thus will allocate
memory.
i'm run lua on a embedded system, embedded systemembedded system, nokia
n73 cellphone. my game will lag if i allocate memory in draw function
since the garbage collection. so we avoid any memory in event loop. but
i really miss the contains function, so i think a syntax allow use
function as infix operator will be great.
e.g. if i have a function add(a, b), i can call it with a `add` b, its
a syntax sugar of add(a,b)
its very simple and can used in many situations, e.g. bitop calls, and
flags contains test.
has anybody agree me? i hope this feature can appear on lua5.3 :)
thanks everybody~