nuttx-apps/interpreters/README.md

38 lines
1.5 KiB
Markdown
Raw Normal View History

2020-07-23 15:19:35 +02:00
# Interpreters
2020-07-23 15:19:35 +02:00
This `apps/` directory is set aside to hold interpreters that may be
incorporated into NuttX.
2020-07-23 15:19:35 +02:00
## Ficl
2020-07-23 15:19:35 +02:00
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.
2022-02-24 20:19:04 +01:00
## 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`
2020-07-23 15:19:35 +02:00
## Mini Basic
2016-08-11 18:01:42 +02:00
2020-07-23 15:19:35 +02:00
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.