每当我有一个函数在另一个末端打电话时,我总是将其称为与返回相同的行,例如 return foo(x)
。
将结果分配给变量botch是否有任何尾巴优化的可能性?这样,
function(...)
...
tmp = foo(x)
return tmp
end
来自http://www.lua.org/pil/6.3.html: In Lua, only a call in the format return g(...) is a tail call.
。
因此,在这种情况下,您缺少尾巴调用优化。