diff --git a/interpreters/README.md b/interpreters/README.md deleted file mode 100644 index 0a1d1c66f..000000000 --- a/interpreters/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# 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 `` and `` 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. diff --git a/interpreters/bas/README.md b/interpreters/bas/README.md deleted file mode 100644 index be3f431eb..000000000 --- a/interpreters/bas/README.md +++ /dev/null @@ -1,59 +0,0 @@ -# Interpreters / `bas` Bas BASIC - -## Introduction - -Bas is an interpreter for the classic dialect of the programming language BASIC. -It is pretty compatible to typical BASIC interpreters of the 1980s, unlike some -other UNIX BASIC interpreters, that implement a different syntax, breaking -compatibility to existing programs. Bas offers many ANSI BASIC statements for -structured programming, such as procedures, local variables and various loop -types. Further there are matrix operations, automatic LIST indentation and many -statements and functions found in specific classic dialects. Line numbers are -not required. - -The interpreter tokenises the source and resolves references to variables and -jump targets before running the program. This compilation pass increases -efficiency and catches syntax errors, type errors and references to variables -that are never initialised. Bas is written in ANSI C for UNIX systems. - -## License - -BAS 2.4 is released as part of NuttX under the standard 3-clause BSD license use -by all components of NuttX. This is not incompatible with the original BAS 2.4 -licensing - -Copyright (c) 1999-2014 Michael Haardt - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -## Bas 2.4 Release Notes - -Changes compared to version `2.3` - -- Matrix inversion on integer arrays with option base 1 fixed. -- `PRINT USING` behaviour for `!` fixed. -- `PRINT`, separator should advance to the next zone, even if the current - position is at the start of a zone. -- Added `ip()`, `frac()`, `fp()`, `log10()`, `log2()`, `min()` and `max()`. -- Fixed `NEXT` checking the variable case sensitive. -- Use `terminfo` capability cr to make use of its padding. -- `LET` segmentation fault fixed. -- `PRINT` now uses print items. -- `-r` for restricted operation. -- `MAT INPUT` does not drop excess arguments, but uses them for the next row. -- License changed to MIT. diff --git a/interpreters/ficl/README.md b/interpreters/ficl/README.md deleted file mode 100644 index 743a1ee63..000000000 --- a/interpreters/ficl/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# Interpreters / `ficl` Ficl - -Ficl is a programming language interpreter designed to be embedded into other -systems as a command, macro, and development prototyping language. Ficl is an -acronym for _Forth Inspired Command Language_. See http://ficl.sourceforge.net/ - -## Build Instructions - -Disclaimer: This installation steps have only been exercised using Ficl 4.1.0. -With new versions you will likely have to make some adjustments to this -instructtions or to the files within this directory. Think of this information -as _recommendations_ - not necessarily proven instructions. - -1. `cd` to `interpreters/ficl` - -2. Download Ficl: http://sourceforge.net/projects/ficl/files/ - -3. Uznip the Ficl compressed file. - - For example, `unzip ficl-4.1.0.zip` will leave the file - `interpreters/ficl/ficl-4.1.0`. - -4. Configure to build Ficl in the `interpreters/ficl` directory using the - `configure.sh` script. - - For example, `./configure.sh ficl-4.1.0` will leave the Makefile fragment - `Make.srcs` in the ficl build directory. - -5. Create your NuttX configuration. Using the `make menuconfig`, you should - select: - - ```conf - CONFIG_INTERPRETERS_FICL=y - ``` - -6. Configure and build NuttX. On successful completion, the Ficl objects will be - available in `apps/libapps.a` and that NuttX binary will be linked against - that file. Of course, Ficl will do nothing unless you have written some - application code that uses it!