Skip to content
All guides

learn

Getting started

Install the toolchain first (Install: winget, Release zip, or install.ps1 / install.sh). Then create a CLI, open src/main.bq, run it.

buraaq new hello --cli
cd hello
buraaq run
CommandWhat you get
buraaq new NAME --cliHello-world CLI (start here)
buraaq runNative binary
buraaq / -e / scriptOptional clang shell (scripting)

The program

fn main() {
    println("Hello, Buraaq!")
}
  • Extension is .bq
  • There is no let: bindings look like assignment
  • print / println know the type
  • Unique stdlib names import themselves: no use for println. Short form is use io, not use std.io.
  • buraaq run builds and executes a native binary

Project layout

hello/
  buraaq.pkg
  src/main.bq
  tests/smoke.bq
  target/

buraaq.pkg is the only config file you need. Path under src/ is the module name. Details: modules.

Build modes

buraaq run
buraaq build --release
buraaq build --release-fast

--release-fast is -O3 plus thin LTO. Use it when you care about the last percent on a hot loop.

Next: the language in one page, then we grow a banking CLI from one println to a packed service.