Learn Synod
A bottom-up tutorial: it starts with the smallest program that shows
something and grows one idea at a time. Each chapter has a goal the current
program cannot reach yet, introduces exactly the syntax that closes the gap,
and starts from the code the previous chapter ended with. The format of a
chapter is in implementation/11-documentation.md;
coverage.md says which chapter teaches which form, type,
context and std package.
You need the synod command (install). Every step is a
complete program: type it, run it with synod run, watch, then change it.
Part I: One program, no nodes
- Hello: show a sentence on the stage
- Values: show a computed sentence
- Time: show sentences at different moments, and ask the viewer
Part II: Nodes and messages
- First node: put a node on the stage that counts
- Messages: two nodes play ping-pong
- Decisions: stop after ten rounds
- Phrases: remove the repeated lines
- Many nodes: broadcast to every peer and count replies
- Chance: spread a rumour to random peers
Part III: When things go wrong
- Faults: keep the rumour spreading through crashes and loss
- Invariants: say what must never happen, then break it
Part IV: Seeing it
Part V: Building real systems
- Packages: build a service on top of the rumour package
- Raft: build
examples/raftfrom an empty folder
Guides
- Install the CLI
- Use the Mac app
- Write a look
- Publish a package
- Use Synod with Claude or another agent
After chapter 15, go on with the examples and the specification.