kaiv Articles

Design, unfolded · kaiv.io

Each article takes one of kaiv's design decisions, unfolds why it is the way it is, and demonstrates the consequences with real toolchain transcripts — every $-line replayed mechanically before publication.

Regular enough for a pacemaker

kaiv's grammar is regular — data, schema, everything the runtime touches. On recursive formats nobody's data needed, structure on the other side of the equals sign, and why all of kaiv processing is mere scanning.

Everything is a string

kaiv has exactly one primitive type. On floats that are really decimals, integers that survive 253, a money type in three lines, and what a type system looks like when every type is a set of spellings.

The eternalink promise

kaiv's registries bind a name to bytes exactly once, forever. On what breaks when registries can change their minds, a validator standing at the door, names that outlive their publishers — and why the promise begins by refusing to be made early.

Who says so?

kaiv values can carry their own attribution — source, timestamp, data-point id — as part of the line, checked by the schema, surviving to the certified reader. On provenance as a type constraint instead of a logging afterthought.

The one place validators could disagree

Ordering text is cultural, and culture doesn't fit in a grammar. On Level 3: locale collation quarantined behind an opt-in span, pinned to one CLDR version — and a conformance rule where refusing is always legal and silently disagreeing never is.