Maybe Not
summary
Argues that optionality must not live in aggregate definitions and shows a concrete change to spec: treat attributes as independent RDF style keys, define reusable schemas for shapes, and express context-specific requirements with a deep selection language that picks nested keys and collection members. Demonstrates prototype work in spec (alpha-2), programmatic spec generation, and test data generation; this is incremental and backward-compatible work in progress, not a finished replacement.
AI-written summary · about
chapters (19)
- 0:00Intro
- 2:28$N Mistakes
- 3:25Where are nulls/ options used?
- 7:43Making an arg optional
- 10:22What's happening?
- 11:53Need not be this way
- 14:01What about Clojure?
- 15:01Partial information
- 17:05Sets vs Slots
- 17:39Maps vs Records/Fields
- 22:20spec/keys
- 24:06Optionality and aggregates
- 26:48Context
- 29:03Optionality in aggregate schemas
- 31:45Optional when?!
- 32:51What do we want?
- 37:37Schemas are deep
- 48:04Don't repress me, man!
- 51:24Coming up
related talks
01h 16mSpec-ulation Keynote
24mSpeculative Development
40mCreating DSLs A tale of spec tacular success and failure
38mVariants are Not Unions
48mContracts & Clojure: The Best-Yet Compromise of Types and Tests
43mspec loves data structures
40mGenerating Generators
45mResidential Programming without Mutable State
