The book

The kaikai Programming Language

A reading book, not a reference manual. The reference lives in the language repo under kaikai/docs. This book is the long-form companion: chapters that explain the why behind the language and walk through working programs from the first page.

The structural inspiration is The Go Programming Language by Donovan and Kernighan: dense prose, real programs from chapter one, integrating case studies, exercises at the end of each chapter. The pedagogical inspiration is Learn You a Haskell for Great Good! by Lipovača: warm tone where the material gets new, concepts introduced gradually, room for the reader to breathe.

Who it is for

A working programmer with experience in some imperative or object-oriented language (Python, Go, Java, JavaScript, C#, Rust) who has not necessarily worked in a functional language. Concepts like algebraic data types, pattern matching, immutability by default, and effects-in-types are introduced with bridges from what you already know.

It is not for absolute beginners. You should already know what a function, a type, a list, and a test are.

Bilingual edition

The book ships in two editions, both first-class. Neither is a translation of the other: each is written in its native voice, with code samples whose comments and file names live in the language of the citing edition.

Status

The book is under active writing. 18 chapters planned plus 6 appendices. The repository includes the full table of contents, chapters in progress, and the example sources each chapter cites.

Living draft. The PDF is regenerated whenever the book sees a significant change.