local names={"Fire","Reload","Load"} local fns={} print("before",#names) for _, name in ipairs(names) do print("body",name) local original = name fns[name] = function(self) return original end end print("after",#fns) for n,f in pairs(fns) do print(n,f({})) end