Nujel
A Lisp inspired language for games and other latency sensitive applications. Development started in order to give WolkenWelten a scripting runtime. While Nujel is still very early in development, and for the most part just a terrible Scheme, it is evolving rapidly.
Future direction
To get an idea about the design and future direction of Nujel have a look at the FUTURE.md.
Current status
Here is a collection of features already implemented, or about to be finished.
- Extensive test suite
- Lexical scoping
- Exceptions
- WASM support
- Formatted output (inspired by Python/Rust/Zig)
- Maps (using binary trees)
- Garbage Collection (Mark-and-Sweep for now)
- Macros (expander written in Nujel itself)
- Bytecoded
- Tail-call elimination
- NaN Boxing
- Modules
- Continuations
- Fibers
- Serializable Fibers
Try it out
You can try out a current WASM Build over here.
GitHub CI (Windows/MacOS/Ubuntu)
| Master | Develop |
|---|---|
sourcehut CI
| Operating System | Master | Develop |
|---|---|---|
| Arch Linux (gcc) | ||
| Arch Linux (clang) | ||
| Arch Linux (tcc-git) | ||
| Arch Linux (bmake) | ||
| Debian Sid / ARM64 | ||
| Guix | ||
| Rocky Linux | ||
| Alpine Linux | ||
| FreeBSD | ||
| NetBSD | ||
| OpenBSD |