fix case for 0 arg function calls

Signed-off-by: Ava Hahn <ava@aidanis.online>
This commit is contained in:
Ava Hahn 2023-01-22 19:36:37 -08:00
parent e7dd0caa4a
commit 71b70fe4b8
Signed by untrusted user who does not match committer: affine
GPG key ID: 3A4645B8CF806069
4 changed files with 29 additions and 22 deletions

View file

@ -1,19 +1,21 @@
#+Title: Relish: Rusty Expressive LIsp SHell
#+Author: Ava Hahn
Note: this document is best read within a dedicated ORG mode interpreter
* Purpose statement
The purpose of Relish is to create a highly expressive POSIX shell using a lisp interpreter.
* Goals
** Iterate on the ideas and designs that were tested with SHS
- Iterate on the ideas and designs that were tested with SHS
https://gitlab.com/whom/shs
** Act as both a high level scripting language and as a system shell
** To be as portable as possible
** To provide code and framework that can be embedded in other applications needing a user facing interpreter
** To be well tested code
** No unsafe code without extreme consideration and rigorous containment
- Act as both a high level scripting language and as a system shell
- To be as portable as possible
- To provide code and framework that can be embedded in other applications needing a user facing interpreter
- To be well tested code
- No unsafe code without extreme consideration and rigorous containment
* Current Status
* Current Status / TODO list
*** DONE Core interpreter stuffs
**** DONE Lexing
**** DONE Parsing
@ -73,7 +75,7 @@ Will need a concatenate function for func tables
* Contact
** Matrix chat: #vomitorium:matrix.sunnypup.io
- Matrix chat: #vomitorium:matrix.sunnypup.io
https://matrix.to/#/#vomitorium:matrix.sunnypup.io
* How to use
@ -87,14 +89,14 @@ The configuration file is evaluated and run as a standalone script and may inclu
Errors during configuration are non-terminal and will result in default values being returned.
**** Important points to note
***** When the configuration file is run, it will be run with default configuration values.
***** The user/script interpreter will be run with a *re-instantiation* of the standard library, using the previously defined configuration variables.
***** Variables and functions defined during configuration will carry over to the user/script interpreter, allowing the user to load any number of custom functions and variables.
- When the configuration file is run, it will be run with default configuration values.
- The user/script interpreter will be run with a *re-instantiation* of the standard library, using the previously defined configuration variables.
- Variables and functions defined during configuration will carry over to the user/script interpreter, allowing the user to load any number of custom functions and variables.
*** Configuration Values
**** CFG_RELISH_POSIX (default 0): when on, enables POSIX style job control.
**** CFG_RELISH_ENV (default 1): when on, interpreter's variable table and environment variable table are kept in sync.
**** CFG_RELISH_PROMPT (default (echo "λ ")): A *function* definition which is called in order to output the prompt for each loop of the REPL.
- CFG_RELISH_POSIX (default 0): when on, enables POSIX style job control.
- CFG_RELISH_ENV (default 1): when on, interpreter's variable table and environment variable table are kept in sync.
- CFG_RELISH_PROMPT (default (echo "λ ")): A *function* definition which is called in order to output the prompt for each loop of the REPL.
Note: CFG_RELISH_PROMPT is only loaded once and will be ignored after initial configuration.
** Compilation