Table of Contents
- Start Type-Driven Development
- Program with types and values
- Package types and values together
- Group values together in types
- Put alternative values in types
- Make types that can
- " Make types that represent operations"
- "Reuse code with many different types"
- "Extend types with new behavior"
- "Bring it all together"

