Get started with Geblang

Download a binary, write a program, run it, and bundle it into one self-contained executable. A few minutes start to finish.

Install

The quickest way is a pre-built binary. Grab the archive for your platform from the downloads page (Linux, macOS, and Windows), extract it, and put geblang on your PATH:

tar -xzf geblang_*_linux_amd64.tar.gz
sudo mv geblang /usr/local/bin/
geblang --version

Prefer to build from source? You need Go 1.26 or newer:

git clone https://github.com/dwgebler/geblang
cd geblang
make build              # produces ./geblang

Your first program

Create hello.gb:

import io;
io.println("Hello, Geblang!");

Run it. No build step, and no main function required for a script:

geblang run hello.gb

Geblang is typed, so a real program declares its types and the checker catches mistakes before the code runs:

import io;

func greet(string name): string {
    return "Hello, ${name}!";
}

let names = ["Mara", "Devi", "Otto"];
for (name in names) {
    io.println(greet(name));
}

Check it, then ship it

Type-check and format without running anything:

geblang check hello.gb
geblang fmt hello.gb

When you are ready to deploy, geblang build bundles your program and the runtime into a single self-contained binary. Nothing to install on the target machine:

geblang build --entry hello --out hello
./hello

Where to next

Browse the features, read runnable examples, or dive into the reference manual.