No description
| docs | ||
| src | ||
| .envrc | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| README.md | ||
| test | ||
selo-pona
selo pona (simple shell in toki pona) is an (planned) interactive shell and (planned) interpreted scripting language that is a (planned) superset of bash. That is, every bash script is also a selo pona script (planned), but selo pona adds some nicer syntax, on top. (planned)
Built in Rust, with minimal dependencies (for now, only libc, and leftpad)
Using
For testing purposes only.
Clone the project, and run cargo run.
Features
Infrastructure
- Analyzer
- Lexer
- AST
- Interpreter
Language
- Variables
- Main control flow
- Commands
- Syntactic sugar
Shell
- read/eval/print loop (basic implementation)
- cli interface (basic)
Common
- Pipes (basic)
- File redirections
- Command substitions
- String, backslash-escapes (basic implementation)
- Subshells
Design principles
fish but POSIX-compliant and retrocompatible with bash.
This is made to be minimalist, useful out-of-the box, and unintrusive. You can leave your default bashrc and it'll work (planned).