Intro to Type Systems and Operational Semantics
summary
Stepwise construction of five toy languages shows how type rules map directly to Haskell code: infer/check via Maybe, big‑step vs small‑step evaluation, and an evaluator producing weak‑head or full normal forms. Implementation uses GHCi, simple monads and de Bruijn indices with explicit shift/subst to avoid name capture. The repo provides versioned code and exercises; the implementations prioritize clarity over performance or production usability and successfully demonstrate preservation/progress reasoning.
AI-written summary · about
chapters (34)
- 0:00Start
- 8:46Type Inference
- 14:29Type Rules
- 21:05Type System Is Syntax Directed
- 30:10Successor Rule
- 42:31Equality on Types
- 44:41Implementation
- 46:40Inference
- 52:33Bidirectional Type Checking
- 55:04Purpose of Type Systems
- 56:27Eager Evaluation
- 1:05:01Pattern Matching
- 1:05:42Implementation of Equality
- 1:10:20Evaluation Rules
- 1:10:57Denotational Semantics
- 1:12:28Operational Semantics
- 1:13:19Small Step Operational Semantics
- 1:17:04Context Rules
- 1:20:30How Do You Specify Evaluation Order
- 1:24:15Preservation and Progress
- 1:25:11Smaller Step Semantics and Big Step Semantics
- 1:25:32Small Step Semantics
- 1:27:35Infinite Reduction Sequence
- 1:29:18Summary of the Code
- 1:32:21Add Variables
- 1:36:30Type Class Constraints
- 1:47:02The Significance of the Weak Head Normal Form
- 1:48:58Type Checking In with a Context
- 1:56:07Semantics of Substitution
- 1:57:38Alpha Renaming
- 1:59:12Substitution
- 2:00:52Free Variable
- 2:03:49Higher Order Abstract Syntax
- 2:05:17The Brine Indexing
related talks
01h 07mBuilding a Dependently Typed Language in Haskell Part 1
36mFlexible Instruction-Set Semantics via Abstract Monads
19mIll-Typed Programs Don't Evaluate
12mOn the power of syntactic methods: It is all syntax after all…
14mType-Sensitive Algebraic Macros
20mDeveloping a Monadic Type Checker for an Object-Oriented Language
41mThe Dialectics of Type-Level Programming
52mType Theory and its Meaning Explanations
