Type constructors are functors. Polymorphic functions are natural transformations. Kinds are the simply-typed lambda calculus one level up. The category theory behind F[_], explained with Scala 3.
A more human explanation of type constructors, kinds, and higher-kinded types in Scala 3. What F[_] really means, and why List is sometimes not a type.
Model, Update, View. Three pieces, one loop, zero surprises. We explain The Elm Architecture from scratch with side-by-side examples in Rust and Scala, trace where the pattern came from, why it keeps showing up in TUIs and functional codebases, and when it stops being the right tool.
Every trait in your hexagonal architecture is a tagless-final algebra. Every impl is an interpreter. You have been writing denotational semantics without knowing it. We trace the connection from Kiselyov’s paper through Scala’s Cats-Effect to Rust’s port traits, and show why the pattern that academics call ‘finally tagless’ is the same pattern that practitioners call ‘dependency injection.’