nuttx-apps/interpreters
yinshengkai 75673fed70 quickjs: add qjs tool configuration item
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2022-09-09 17:25:12 +02:00
..
bas Add printflike to all printf like functions 2022-07-18 14:09:10 +03:00
duktape Don't download tarballs if a local git repo found 2022-08-28 17:20:47 +08:00
ficl interpreters/ficl: add double include guard to nuttx.h 2022-04-24 09:48:56 +08:00
lua Don't download tarballs if a local git repo found 2022-08-28 17:20:47 +08:00
minibasic apps: remove space befone newline in logs 2021-12-27 20:52:08 -06:00
quickjs quickjs: add qjs tool configuration item 2022-09-09 17:25:12 +02:00
wamr interpreters/wamr/Kconfig: Add INTERPRETERS_WAMR_DEBUG_INTERP option 2022-08-29 14:20:19 +08:00
wasm3 Don't download tarballs if a local git repo found 2022-08-28 17:20:47 +08:00
.gitignore Remove extra whitespace from files (#43) 2020-01-31 08:29:24 -06:00
Make.defs Makefiles: Gregory Nutt: update licenses to Apache 2021-06-07 21:35:33 -05:00
Makefile Makefiles: Gregory Nutt: update licenses to Apache 2021-06-07 21:35:33 -05:00
README.md interpreters: add Lua support 2022-03-21 13:49:42 +08:00

Interpreters

This apps/ directory is set aside to hold interpreters that may be incorporated into NuttX.

Ficl

This is DIY port of Ficl (the Forth Inspired Command Language). See http://ficl.sourceforge.net/. It is a DIY port because the Ficl source is not in that directory, only an environment and instructions that will let you build Ficl under NuttX. The rest is up to you.

Lua

Fetch and build a Lua interpreter. Versions 5.2 through 5.4 are supported. The lua command will be added to NSH. Lua can run a script for a given path, execute a string of code, or open a readline compatible REPL on the NSH console. The <lua.h> and <lauxlib.h> headers are available to start a new embedded interpreter or extend Lua with C modules. See the luamod_hello example for how to include a built-in module.

A math library is required to build. Enable the LIBM config or use a toolchain provided math library.

The following configs are recommended for a full featured Lua interpreter:

  • LIBC_FLOATINGPOINT
  • SYSTEM_READLINE

Mini Basic

The Mini Basic implementation at apps/interpreters derives from version 1.0 by Malcolm McLean, Leeds University, and was released under the Creative Commons Attibution license. I am not legal expert, but this license appears to be compatible with the NuttX BSD license see: https://creativecommons.org/licenses/. I, however, cannot take responsibility for any actions that you might take based on my understanding. Please use your own legal judgement.