1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00
RIOT/examples/lua_REPL
Juan Carrano 16261a2f7c examples/lua_REPL: Correctly declare dependency on script files.
Custom targets should be added to BUILDDEPS. Without this patch
`make -j clean all" fails because of weird race condition (trying
to clean while building is kind of contradictory anyways.)
2018-11-23 14:48:21 +01:00
..
main.c examples/lua_REPL: cast pointer to void in printf 2018-08-03 11:03:59 +02:00
Makefile examples/lua_REPL: Correctly declare dependency on script files. 2018-11-23 14:48:21 +01:00
README.md examples/lua: Add REPL. 2018-07-02 15:39:31 +02:00
repl.lua examples/lua: Add REPL. 2018-07-02 15:39:31 +02:00

Lua interactive interpreter

About

This example shows how to run a Lua Read-Eval-Print loop. It works in a similar way to the lua shell that comes with your operating system's default lua installation.

How to run

Type make all flash to program your board. The lua interpreter communicates via UART (like the shell).

It is not recommended to use make term because the default RIOT terminal messes up the input and output and the REPL needs multi-line input. Instead, use something like miniterm.py from pyserial:

miniterm.py --eol LF --echo /dev/ttyACM0 115200

By default only some of the builtin modules are loaded, to preserve RAM. See the definition of BARE_MINIMUM_MODS in main.c.

Using the interpreter

See the Lua manual for the syntax of the language.

Each piece of single or multi-line input is compiled as a chunk and run. For this reason, issuing "local" definitions may not work as expected: the definitions will be local to that chunk only.