This is part one of a two-part blog post on taking advantage of first-class functions in Lua.
Part one explains the inner workings of first-class functions from both a generic computer science
perspective, and how you implement that within Lua. Part two puts all the theory together to
create a lean version of an Entity Manager.