Function scope

A function can be declared as local to limit the scope of the function. A function is global by default.

It's good practice to use local whenever possible to limit the scope of functions and variables to where they are needed. It allows for a flexible and modular approach in designing functions.

If you were to create a simple APP.lua file and add a function called APPadd like below:

function APPadd(a,b) local sum = a + b return sum end

In main you can then call APPadd and get the sum:

In the same APP.lua file, now alter the function to be local.

local function APPadd(a,b) local sum = a + b return sum end return APPadd

The function is now local, but we have also returned the APPadd function.

In main, you can capture the returned function in your require statement and use it:

Â