A small statically typed scripting language built in Rust.
Muninn parses source, checks types, compiles bytecode, and runs it on a stack VM. The same program can run through the interpreter, bytecode path, hot-reload runtime, or the experimental integer tracing JIT.
Try a program in the browser: the playground runs this
interpreter, compiled to WebAssembly, in your own tab, so the output and the
diagnostics are the ones the command line produces.
./scripts/build_site_wasm.sh builds it, and
python3 -m http.server --directory site serves it.
The Pages workflow publishes the same page to https://wheevu.github.io/muninn/
on a push to main.
| Metric | Result |
|---|---|
| Workspace tests | 193 |
| Benchmark targets | 6 |
| Scalar loop, compile and run | 400 µs/op |
| Scalar loop, VM only | 354 µs/op |
| Tensor pipeline, compile and run | 32 µs/op |
Apple M1, Rust 1.97.1, release mode, commit d70836e.
These are local wall-clock measurements from muninn-metrics, not portable latency claims.
- Typed functions, bindings, mutation, blocks, loops, and conditionals
- Int, Float, Bool, String, Tensor, Void, and nominal records
- Tensor broadcasting, matrix multiplication, reductions, and eager gradients
- Source checks, bytecode builds, editor support, and runtime metrics