A small/lightweight statically typed scripting language written in Zig
- Small in size and complexity (just a bit more than Lua though)
- Statically typed
- Unambiguous
- No nonsense coercion
- Fibers
- JIT compilation with MIR
- Tooling
- VS Code extension
- Helix support thanks to tree-sitter grammar
- LSP
- Formatter
Latest zig version supported: 0.15.0-dev.263+d8153fa74
- Since this is built with Zig, you should be able to build buzz on a wide variety of architectures even though this has only been tested on x86/M1.
- Linux or macOS (Windows support is coming)
- libc
- zig master
- Clone the project:
git clone https://github.com/buzz-language/buzz <buzz_dir>
- Checkout submodules:
git submodule update --init
- Have fun:
zig build run -- <myscript.buzz>
to run a script orzig build run
to start the REPL
# install locally at ~/.local
zig build -Doptimize=ReleaseSafe install -p ~/.local
# install globally at /usr/local
sudo zig build -Doptimize=ReleaseSafe install -p /usr/local
If you're usage if performance critical (game dev for example), you can build using -Doptimize=ReleaseFast
.
Remember to modify PATH to include the bin
directory where it is installed. For example, export PATH=PATH:/home/xxx/.local/bin
. You can then run buzz with buzz <myscript.buzz>
. Or you can simply run buzz
to start the REPL.