Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Foundations

This part is the atoms. By the end of it you have written enough Argon to model a domain end-to-end: the substrate that lets a vocabulary package declare metatypes in the first place, then concepts, relations, rules, computations, and a type system over them.

We start with the substrate because every other chapter in this part uses metatypes — kind, role, phase, relator — that come from a vocabulary package (UFO, in our case) built on the substrate. Knowing what those declarations actually are makes the rest of Part 2 about modeling rather than memorizing keywords.

Chapter by chapter:

By the end of Part 2 the reader has a working, queryable, validated lease model with derived state, mutations for signing and expiry, and refinement types that catch bad data at compile time — and an understanding of which keywords are language primitives and which are package declarations.