← Назад к блогу

Baga 1.1.2 — wait-for verification, TLS 1.3 server, bagabuch

2026-09-06 08:55:25
Baga 1.1.2 is out: https://github.com/katehonz/baga-lang

Language
- Wait-for verification (M19–M30): deadlock on join-before-send, send on a full buffer, nested go, server loops. Deadlocks are REFUTED; outside the fragment is UNKNOWN.
- Logical right shift >>> (zero-fill). Arithmetic >> is floor/sign-fill; the count is masked (b & 63), not UB.
- RC memory: Vec<Vec<E>>, nested generic containers, temp wrapping in && / || / match / catch.
- TLS 1.3 server handshake in pure Baga (x25519, RSA-PSS / ECDSA-P256). Application records chunked to 16 KB.

Ecosystem
Packages live as separate repositories under github.com/bagalang:
https://github.com/orgs/bagalang/repositories

- boilaDB: PG and HTTP connection mux, dual-key O(1) versioned get, TLS on the PG wire. pgbench -S ~109k tps at c=16.
- bagabuch: Bulgarian accounting (invoices, VAT, SAF-T, bank import, OCR to draft invoice).
- chronobaga: civil dates (ISO/financial, Bulgarian invoice/VAT print).
- std/json no longer O(n²) on escape/parse; HTTP client response cap is 8 MB.

Clone and build:
git clone https://github.com/katehonz/baga-lang
cd baga-lang && git submodule update --init --recursive && make