From e61abd8ea50b1e22cf9e56425db51919848b2aa0 Mon Sep 17 00:00:00 2001 From: Clyne Sullivan Date: Mon, 5 Feb 2018 11:49:40 -0500 Subject: [PATCH] Update README.md --- README.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index f2dbcab..1a11269 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,19 @@ # interpreter -This project aims to provide a very minimal scripting language for embedded systems. Many other languages already exist, such as Lua, Tcl, or BASIC; however, most implementations require certain system calls like a read() and write(), expecting a filesystem. This interpreter aims to be as independent as possible: parsing script from strings at a time, having minimal built-in functions (so the user can define their own prints and such), and only requiring a few library functions. +This project aims to provide a very minimal scripting language for embedded systems. Many other languages already exist, such as Lua, Tcl, or BASIC; however, most implementations require certain system calls like a read() and write(), as they expect a filesystem. This interpreter aims to be as independent and portable as possible: parsing script from strings one at a time, having minimal built-in functions (so the user can define their own prints and such), and only requiring a few standard library functions. -To use this program with your own device, only one function is truly neede: malloc, and calloc (though may switch to only malloc). +To use this program with your own device, you need some malloc/free implementation, and string functions like those in string.h, atoi, and snprintf. Some of these functions may become coded in so that a standard library isn't required. -Current features: +Only a few commands are built in to the interpreter: +* set - set variables +* func/end - define functions +* jmp - jump to line + +Other features: * function/variable defining in c -* variable definition -* function calling with variable expansion +* expression solving + +Soon: +* conditionals +* error messages This project is still in heavy development, so don't expect much. To include it in your own project, just link in parser.o and use the header files.