An interpreter for the FALSE language — possibly the fastest in the world.
- Supports all language features;
- Written in Rust;
- Up to 38 times more performant than false-js (see benchmarks below). If you are aware of any faster implementations, please let me know!
Test | false-js | rfalse | difference |
---|---|---|---|
Primes, n=1999 | 4392 ms | 168 ms | ~26x |
Fibonacci, n=33 | 37597 ms | 987 ms | ~38x |
Fibonacci, n=25 | 802 ms | 21 ms | ~38x |
cargo run --release -- examples/hello.false
In no filename is given, stdin will be used instead.
Experimental feature. WASM performance is about 2x worse than native build.
First, compile the WASM files:
wasm-pack build --release --target web
After that, run a webserver. For example:
python3 -m http.server 8000 -d .
Navigate to http://localhost:8000 and open the console.
Run linter:
cargo clippy
Run tests:
cargo test
Run benchmarks:
cargo bench --bench perf
GNU LGPL v3