Tutorial
This tutorial teaches the shipped language: what vow build accepts today. When design docs use friendlier spellings (Int, List), the examples here win.
| # | Page | You learn |
|---|---|---|
| 1 | Basics | main, let/var, types, print, comments |
| 2 | Built-in functions | strings, collections, math, JSON, Caps I/O |
| 3 | Control flow | if expressions, loops, break/continue, match |
| 4 | Functions & lambdas | fn/function, params, (x) -> …, higher-order helpers |
| 5 | Strings & collections | "${…}", arrays, maps, Phase 1 helpers, JSON |
| 6 | Structs, enums, match | struct/class, enums, exhaustiveness |
| 7 | OOP | methods, interfaces, dyn, inheritance, chaining |
| 8 | Syntax ergonomics | new, switch, try/catch, print(...) |
| 9 | Option & Result | no null, ?? / ?., unused-Result errors |
| 10 | Interfaces & dyn | deeper static + dyn polymorphism |
| 11 | Capabilities | needs / with / --grant / scoped_to / budgets |
| 12 | Contracts | requires / ensures |
| 13 | Memory & regions | arenas, region { } |
| 14 | Modules & packages | import, vpm |
| 15 | Testing | test / assert |
| 16 | Concurrency | threads, processes, async overview |
| 17 | Async / await | async fn, await db_query, block_on |
| 18 | HTTP API | vow-web-server + Postgres async demo |
Before you start
Section titled “Before you start”curl -fsSL https://install.vowlang.dev | shexport PATH="$HOME/.local/bin:$PATH"vow --versionOr follow Install and skim CLI commands. Browse runnable samples in the Examples gallery.
vow new learn-vow && cd learn-vowvow check src/main.vow