Simple code for a type safe world
summary
Claims that Typesafe Config and similar libraries are not truly type safe and shows a concrete alternative: replace runtime-config lookups with Scala case classes and multiple JVM mains so misconfiguration fails at compile/startup. Builds a macro called capture that generates typed wrappers for shell commands (demoed with git, echo, cat, grep), implements a JVM process piping helper to chain commands, and shows a working CBT prototype to be released. no implicits, no shapeless
AI-written summary · about
chapters (20)
- 0:00Intro
- 0:31Slides
- 1:35Config
- 9:34Dispatching
- 14:38Configuration
- 18:38Non Scala developers
- 22:03Creating a main method
- 30:48CBT plugin
- 32:48Capture macro
- 33:48Import capture macro
- 34:48Capture name
- 35:48Annotations
- 37:48Extracting
- 39:48Process
- 40:48Echo
- 41:48Pipe extension
- 42:48Combining pipe and type safe
- 43:48Scala macro
- 47:48Emma Night Ops
- 48:48Capture
related talks
42mLet the Compiler Help You: How to Make the Most of Scala's Type System
44mTelling the Truth with Types
48mA gentle introduction to type level programming in Scala
30mConstraint Typing with Boolean Algebra
33mArmored type safety with Iron
49mThe Trouble With Types
15mTypestate via Revocable Capabilities
22mType-safe app configuration: a powerful, emerging way to accelerate product development
