Generic Go by node
The third time you write Min for a new numeric type, the joke gets old. Go shipped type parameters in 1.18 and the language has spent four years digesting what they unlock and what they cost. This is the field book on the result. Type parameters and the inference rules that decide when you can drop them. Constraints, type sets, and the difference between comparable and cmp.Ordered. Generic data structures that hold their own against the hand-rolled versions, and the GCShape monomorphisation that decides when they do. The standard library's slices, maps, and cmp packages, with an honest account of why Map, Filter, and Reduce are not in there. Six chapters, every listing runs in the CivNode browser sandbox. Generics for data, interfaces for behaviour, both when both are wrong.