Editorial Style Guide (Vitte Book)
This guide is the editorial contract for the whole book. Its purpose is simple: every chapter must teach one coherent thing with one coherent example, without repetitive filler and without line-by-line paraphrase.
Core Rules
- One chapter, one main problem, one main example.
- Explain the whole flow before explaining local syntax.
- Do not write line-by-line commentary unless the chapter is explicitly about parsing or debugging a single statement.
- Every technical chapter must include a nominal path, an invalid path, and an observable result.
- Every keyword page must show the keyword in Vitte and compare it briefly to C when that comparison clarifies intent.
Chapter Contract
Concrete Problem: name the real engineering problem.Red Thread (Single Project): keep one scenario from start to finish.For what: say what this chapter helps the reader build, debug, or decide.What you are going to do: explain the proof path of the chapter.Coherent example: one complete program or subsystem extract.Global explanation: explain responsibilities, data flow, boundaries, and failure points.Invalid case: show how the chapter fails and how the reader notices it.Short exercise: ask for one modification that preserves the chapter invariant.
Keyword Contract
Definition: state what the keyword means in the language.Syntax: show the canonical shape.Example in Vitte: complete, runnable or near-runnable snippet.Example in C: short comparison when it clarifies semantics.Invalid example: show the misuse and the expected family of diagnosis.Global explanation: explain what the keyword changes in the full flow.
Anti-Repetition Rules
- Do not repeat generic filler such as “read the core idea first”.
- Do not duplicate the same pitfall list across unrelated chapters.
- Do not rename the same section three ways; keep one stable heading.
- Do not comment each line if the reader really needs the architecture of the block.
Stdlib Policy
- The stdlib must be documented by family, not by isolated minimal snippets only.
- Each family must explain its responsibility, main submodules, integration boundaries, and realistic usage.
- Examples should be complete enough to show where data enters, which library layer acts, and what comes out.
Length And Density
- Prefer dense examples over decorative prose.
- Keep bullets for inventories and contracts, not for replacing explanation.
- If a chapter grows, add more evidence and scenarios, not more filler.
Paths And Links
- Reference the book with the
docs/book/prefix when discussing repository paths. - Prefer stable repository-relative paths and stable chapter numbering.