An interpreter for the FALSE language, possibly the fastest in the world.
An interpreter for the FALSE language — possibly the fastest in the world.
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 |
Experimental VM:
Test | rfalse-vm2 | false-js | solkin/false-vm |
---|---|---|---|
Primes, n=1999 | 102 ms | 4392 ms (~43x slower) | 154 ms (~1.5x slower) |
Fibonacci, n=33 | 435 ms | 37597 ms (~86x slower) | 504 ms (~1.16x slower) |
Fibonacci, n=25 | 9 ms | 802 ms (~89x slower) | 11 ms (~1.2x slower) |
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
Other notable implementations: