aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.adoc18
-rw-r--r--ell.c1
2 files changed, 16 insertions, 3 deletions
diff --git a/README.adoc b/README.adoc
index cfb1329..b507c9f 100644
--- a/README.adoc
+++ b/README.adoc
@@ -58,7 +58,7 @@ name and it is resolved as if `set` was called on it.
The last expression in a block is the return value.
-Special forms
+Special Forms
-------------
`quote <arg>`
@@ -77,11 +77,11 @@ values, everything else is taken as true.
`set <name> [<value>]`
-Retrieves or sets a named variable.
+Retrieve or set a named variable. The syntax sugar for retrieval is `@`.
`list`
-Returns a list of parameters. The syntax sugar for lists is `[]`.
+Return a list made of given arguments. The syntax sugar for lists is `[]`.
`if <cond> <body> [elif <cond> <body>]... [else <body>]`
@@ -127,6 +127,18 @@ Arithmetic comparisons on floating point numbers.
Simple string comparisons.
+Building and Running
+--------------------
+By default, running `make' will only build the interpreter:
+
+ $ make
+ $ ./interpreter greet.ell
+
+Install development packages for GNU Readline to get a REPL for toying around:
+
+ $ make repl
+ $ ./repl
+
Contributing and Support
------------------------
Use this project's GitHub to report any bugs, request features, or submit pull
diff --git a/ell.c b/ell.c
index 902d9d9..7c3b78a 100644
--- a/ell.c
+++ b/ell.c
@@ -778,6 +778,7 @@ set_arg (struct context *ctx, size_t arg, struct item *value) {
// TODO: we should probably maintain arguments in a separate list,
// either that or at least remember the count so that we can reset them
+// NOTE: it even seems that storing arguments as numbers is completely useless
static bool
execute_and_set_args (struct context *ctx, struct item *following) {
struct item *args = NULL;