Separating Behavior and Data with Type Classes in Scala
summary
Shows how to use Scala type classes and higher-kinded types to separate behavior from concrete implementations so libraries don’t force a particular return type. Presents a simple problem and step-by-step examples of writing fully polymorphic programs and libraries where users can choose their own effect/return types rather than being tied to a specific runtime.
AI-written summary · about
related talks
45mHow to be polymorphic in Scala
20mType Classes for the Rest of Us
31mTYPECLASSES — A TYPE SYSTEM CONSTRUCT
41mPolymorphism in Scala
35mIntroducing Typelevel Scala into an OO environment
32mUnderstanding the Type System of Scala 3
31mType-Classes (in Scala 3)
48mAcademese to English: A Practical Tour of Scala’s Type System
