diff options
| author | Kai Stevenson <kai@kaistevenson.com> | 2023-02-18 22:36:41 -0800 |
|---|---|---|
| committer | Kai Stevenson <kai@kaistevenson.com> | 2023-02-18 22:36:41 -0800 |
| commit | e8df5cd395569ddd944900ec7f22236db491b5a8 (patch) | |
| tree | 7ecd61fda2b0fa9b0b1739d88050054ed699dd5b | |
| parent | 817eeb9ef0e32abce06564d1d5aa01eca6c501ef (diff) | |
updated docs
| -rw-r--r-- | README | 3 | ||||
| -rw-r--r-- | doc/internal_functions_dictionary | 2 |
2 files changed, 5 insertions, 0 deletions
@@ -11,5 +11,8 @@ A key is either a store()'d symbol, or an internal function. Internal functions have an implementation defined by eval.c, whereas keys are simply pointers to other symbols, as stored in a hashtable. +ref() returns a pointer to its argument, eval() evaluates a ref, passing its other +arguments to the scope pointed to. + Read the files in doc/ for more specific information, or look at examples/ to see what the syntax looks like and what's possible. diff --git a/doc/internal_functions_dictionary b/doc/internal_functions_dictionary index f7243b2..5238098 100644 --- a/doc/internal_functions_dictionary +++ b/doc/internal_functions_dictionary @@ -1,4 +1,6 @@ root() -- executes all arguments. returns the eval of the last symbol +ref() -- returns its argument without evaluating it +eval() -- evaluates its first argument, passing the rest of its arguments into the eval of its first argument store() -- stores a pointer to the first argument under the name specified by the eval of the second argument, within the local scope update() -- same as store(), but tries to overwrite the value of an already stored key - if the current scope doesn't contain the key, checks upwards. if no scope contains the key, update() does nothing eq() -- returns 1 if the eval of all the arguments is the same, 0 if different. accepts any number of arguments |
