Ages 15–18 · Grades 9–12 · Computer Science
StateForge
Modern apps don’t draw the screen and then edit it — the screen is a function of the state: change the state, and the screen recomputes itself. Here you read a typed struct state and a declarative view and reason about it: what screen does it show? Tap a control — what shows now? And when a stored value goes stale after an event, redesign it — derive, don’t store a value you can compute, so there’s no stale copy to forget.
The state is a teaching subset of the Swift language (a teaching dialect, not SwiftUI); the puzzles are original teaching examples. Runs on your device — nothing leaves it.
Loading the state lab…