Skip to content

Vow documentation

Vow is a systems language with two pillars: contracts (requires / ensures) and capabilities (permissions the program cannot create for itself). No garbage collector, and no manual free(). No ambient filesystem or network access (ambient print is a deliberate debug exception).

  1. Install — curl installer ships vow + vpm
  2. Your first programvow new, src/main.vow, build, run
  3. CLI commandsnew / init, build, run, check, fmt, lsp, profile, audit
  4. Built-in functions — strings, collections, math, JSON, I/O builtins
  5. Tutorial — every major syntax construct, by use case
  6. The 5-minute tour — contracts + capabilities in one pass
  7. Async / awaitasync fn, await db_query, block_on from HTTP handlers

No package install required — these ship with the compiler:

Area Examples Docs
Strings str_trim, str_split, parse_int, to_string_int Tutorial · Reference
Collections array_push, array_sort, array_map, map_get Tutorial · Reference
Math abs_int, min_int, sqrt_f64 Reference
JSON json_parse, json_stringify Tutorial · Reference
Time / I/O clock_now, read_file, thread_spawn, … Reference

Full tables: Built-in functions reference.

  • vpm — package manager (ships with the installer)
  • vow-web-server — Express-like HTTP router and serve loop
  • Ecosystem — what ships vs early helpers vs stubs