Lua is a tiny language that can do a lot. As a scripting language, it can be embedded into larger projects, used in IoT devices for its lightweight nature and implemented as a user-friendly way to get help from a wide variety of coders thanks to its simple interface and flexible design. It can support both functional and object-oriented approaches, but the amount of support it can supply is limited. Lua has no built-in support for advanced file manipulation, directory traversal, process creation or piping. The goal of Apolo, and my Google Summer of Code project is to build a library that adds these core functions to lua.
The major goals of this project are:
- To broaden Apolo's current library of commands
- To add piping and IO redirecting to Apolo
- To include flexible management of background processes
- To build a wide variety of tests to ensure that all of lua's functions work as intended