tree-traversing LISP interpreter geared toward embeddability and system scripting
| src | ||
| tests | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE.md | ||
| Readme.md | ||
Relish
Rusty Expressive LIsp SHell
Goals
Relish is a language meant to iterate on the ideas and designs that were tested with SHS. Relish acts as both as a high level scripting language and as a system shell. This language is meant to be practical for administrators and power users. Similar technologies include Python, Bash, and Racket.
Current Status
- Core functionality (lexing, parsing, evaluation, function and variable tables) is complete and tested
- A primitive REPL is complete
Pre-alpha release tasks
- Rudimentary control flow (if, loop, let)
- Variable declaration and environment integration
- Function declaration
- Shell module including foreground process, background process, and environment variable
- Stdlib including string operations, arithmetic operations, and file operations
- TESTS TESTS TESTS
Compilation
$ cargo build
Testing
$ cargo test
Running
$ cargo run src/bin/main.rs