May Your Data Ever Be Coherent
summary
Coherence means designing data so related inputs and checks are encoded together rather than scattered; examples use Scala pattern matching, Option/Validation, and monads for data flow to make the read/write dependency structural not implicit. A compact Iter/Enumerator representation is sketched where a sequence as function from Iter to Iter enforces valid iteration. Parametric polymorphism is the payoff: parametricity constrains implementations, letting the typechecker reject many bugs early and making control-flow reasoning unnecessary.
AI-written summary · about
chapters (19)
- 0:00Intro
- 4:33Outline
- 5:21Expressions
- 7:04Boolean Algebra
- 8:13Data indirection
- 10:52Dependencies
- 12:28Dataflow
- 16:14Data Flow
- 17:02Pattern Matching
- 18:31Length
- 22:32Range
- 23:57Counting
- 26:00Representation
- 27:26Itter
- 31:32Sequence
- 32:47Terminology
- 35:24ParamaTricity
- 37:07One Implementation
- 44:08Summary
related talks
44mCAN WE FREE CONCURRENT PROGRAMMING FROM THE MONADIC STYLE
23mDuality and How to Delete Half (minus ε) of Your Code
01h 02mPrinciples and tools to cleverly model your data in Scala
19mScala for the Rest of Us
46mOptimusPrimeT
48mObject Functional Programming
45mDesign Patterns in Scala
29mIntroduction to Recursion Schemes
