Nimble is a register‑based bytecode language with optional type annotations and a small but pragmatic standard library. JIT scaffolding exists but is not yet wired into execution.
Build from source using Cargo:
cargo build --releaseCreate hello.nmb:
fn main():
out("Hello, Nimble!")
main()Run it:
nimble run hello.nmbnimble run <file>– compiles and runs a script from the current directory, automatically checking types before executing.nimble check <file>– performs parsing and inference only, but still prints the same colorful diagnostics the runtime emits.nimble repl– drops into the REPL with:globals, diagnostics, and the runtime hook enabled so you can experiment safely.
Browse examples/README.md for the curated basic and standard-library samples referenced from the docs tree.
x = 10
name = "Soumalya"
pi float = 3.14
active bool = truefn add(a int, b int) -> int:
return a + b
fn square(x int) -> int = x * xname = in("Enter your name: ")
out("Hello {name}!")for i in 0..10:
out(i)
for i in 0..10 step 2:
out(i)load math
out(math.add(2, 3))