Lua è un linguaggio di scripting potente, veloce, leggero e integrabile. Viene digitato dinamicamente, viene eseguito interpretando il bytecode e dispone della raccolta automatica dei rifiuti. La sua velocità è uno dei motivi principali per cui è ampiamente utilizzato dalla comunità di machine learning. Viene spesso definito "linguaggio di estensione estensibile".