What 1.0 ships
Buraaq 1.0 is the public language. You install one toolchain. You write .bq. You ship a native binary.
This is the ceremony: not a second language, not a container product, not a runtime you rent.
Install is one step
Pick what fits your machine:
| Path | Notes |
|---|---|
winget install buraaq | Windows, when the winget package is live |
Release zip buraaq-*-windows-x64.zip | Exe + sysroot, no clone: Releases |
.\install.ps1 / ./install.sh | From a clone; copies packaged dist/buraaq + sysroot |
ext install ThoriumDC.buraaq | VS Code / Cursor: can download CLI+sysroot on Windows; still needs clang |
Full guide: Install.
Auto-import
In a project, unique std.* names import themselves. You stay in the program, not in use lists.
fn main() {
println("Hello, Buraaq")
println(42)
}
page, api, run, hold, zeros: same rule. Sibling modules still take an explicit use. Full story: modules.
Lists: [1, 2, 3] and ["a", "b"] (xs[i], xs.push, for x in xs). Maps: { "Asim": 30 }. Errors: raise / ? / ?? — not tagged Ok / Err. Generics: fn min[T] emits int / text / float / per-call-site struct copies (min / min__text / min__float / min__Pair).
Self-hosted compiler
The frontend: lexer, parser, names, MIR, LLVM emission: is written in Buraaq. A clone with clang links boot/stage0.ll and rebuilds that compiler. dist/buraaq is the product.
New names
| You type | Job | Not |
|---|---|---|
std.stream | Live frames, plus clip/shot files | WebSockets-as-a-library |
std.gfx | Game canvas and sound; play NOVA (stdlib/examples/nova.bq) | An engine you rent |
std.hold | Named columns | Pandas |
std.grid | Numeric arrays | NumPy |
std.keel | TLS APIs and pages | Express / a framework |
buraaq pack / ship / dock | Hashed .bur; live dock on :7422 | Docker image |
buraaq add / index | In-tree packages/index.json | A hosted registry you must rent |
buraaq fmt / lsp / debug | Format, language server, -g | A second toolchain |
buraaq / -e / script | Optional clang shell | A second dialect |
std.led + buraaq flash | Board LED without CMake | Vendor SDK in your tree |
buraaq ai / std.ai | Mind: local models, serve, train | A notebook zoo in your project |
buraaq ai strata / --strata | Strata: GPU→RAM→NVMe residency | Fit-in-VRAM-or-fail |
Read Stream, Gfx, Hold, Grid, Scripting, Electronics, Mind, Strata.
Measured speed
Gate B, equivalent-n, Buraaq --release vs C++ -O2, clang 22. n was not reduced.
| Bench | n | C++ -O2 | Buraaq | Ratio |
|---|---|---|---|---|
| nested_loop | 1e4² | 0.010s | 0.002s | 0.16× |
| integer_sum | 1e8 | 0.015s | <0.001s | 0.00× |
| float_saxpy | 1e7 | 0.004s | 0.004s | 0.97× |
| numerical_loop | 1e8 | 0.083s | 0.084s | 1.01× |
| fib_iter | 1e8 | 0.020s | 0.021s | 1.02× |
integer_sum is an Orbit fold of wrapping sum = sum * 3 + i (same n=1e8; n=10 checksum 44281). Four benches beat or match C++. Worst case published: fib_iter. Method: performance.
End-to-end apps
Walk one program from println to a live API: the banking CLI through the ledger as an app. Keel reconnects when a Neon pooler drops an idle connection. Pack a .bur on the same OS as the host. Secrets stay in host env (BURAAQ_DATABASE_URL), never in git.
Use it clean
Test on systems you own or are authorized to use. Do not abuse. Buraaq administration cooperates with agencies.
Next: Getting started.
