FREAKV3 docs freak 0.15.1 (Maverick)

The Freak Book#

Learn FREAK from the first program to the compiler's insides, with every listing compiled and run before it was printed.

This is a book you read in order. It starts by installing the compiler and printing one line, and it ends inside the compiler that printed it. Along the way it teaches the language that ships today, shows where the next compiler already behaves differently, and marks clearly the parts of FREAK that exist only on paper so far.

If you want to look something up instead, the reference pages in the sidebar are organised by topic. This book is organised by what you need to know next.

84/84
executable examples compile and passVerified with freak 0.15.1 (Maverick) on 2026-10-18T21:50:54Z. Every code block on this site marked compiles was built, executed, and checked against its reviewed expected output.
46/46
V4 notes match the pinned development snapshotChecked against Freak-lang commit 7c9a1f3c27 (2026-10-04) on 2026-10-13T16:14:34Z. V4 has no release; these notes describe that one commit and nothing newer.

Three kinds of statement#

FREAK has two compilers and one specification, and they do not agree yet. The book never blurs them.

MarkMeansChecked against
Ordinary text and listingsIt works in V3, the compiler you can installThe released V3 compiler: each listing was built, run, and its output compared
In V4 sections and boxesThe next compiler, V4, behaves this wayOne pinned development commit of V4, named on every page
Planned boxesThe specification describes it; no compiler runs it yetThe specification only. Treat it as a plan, not a promise

The introduction explains each of these, and how the checking works.

Part I: First sortie#

Everything you need to write small, complete programs.

Still to be written#

The remaining parts are planned and listed here so you can see where the book is going. Their chapters appear in the sidebar as they are finished.

PartChapters
II. Working with dataWords · Shapes · Methods and impl · Lists · Legacy arrays · Bytes
III. OwnershipWhat ownership is · The strict borrow checker in V3 · Meiya, the V4 borrow checker
IV. Building programsFailure without result · Program structure · A tour of the standard library · Input, output and the terminal · Networking · Hangar · Calling C
V. ProjectsA command-line tool · A squadron roster · A line server
VI. The anime layerNarrative syntax you can run · The audit suite
VII. The language aheadOptional and fallible values · Variants and patterns · Doctrines and generics · Closures and iterators · Collections · Borrowing in full · Concurrency · The advanced types · Modules and visibility · Build modes, voices and tests
VIII. Inside the compilersHow V3 works · How V4 works · Reading diagnostics · Contributing
AppendicesReserved words · Operators · Command line · Types and conversions · Grammar · Glossary · V3 to V4 differences · Feature status · How this book is checked

Badged executable examples were compiled and run with the released freak 0.15.1 (Maverick). 84/84 examples match their reviewed expected output. Illustrative snippets are labelled separately. Regenerate with python tools/refresh.py.

V4 boxes were checked against the development snapshot 7c9a1f3c27 (2026-10-04); 46/46 V4 examples match their reviewed expectation. Regenerate with python tools/verify_v4.py --checkout <Freak-lang>.