~/talk

GADTs and You; Writing Safer Code Using GADTs

Talkat LambdaConf 2019 · 2019-06-05..06-07· [typescript]
links:none on file
slides:none on file

Concrete claims and runnable patterns: using OCaml with GADTs to encode Peano numbers and length-indexed vectors, build typed heterogeneous lists, and make expression trees that eliminate runtime type checks. A practical case wires validation flags into block types and composes validators so Coda block handling enforces required checks at compile time instead of runtime. Examples show how many validation dimensions scale, what costs appear (extra allocations, compiler slowdowns) and what actually gets enforced.

AI-written summary · about

  1. 0:00Intro
  2. 0:33GADT Generalized Algebraic Data Type
  3. 1:45An introduction to types in
  4. 4:13A Review of ADTS
  5. 5:58Limitations of ADTS
  6. 8:19Basic GADT Constructions
  7. 15:03"Value Safe" Functions Using GADTS
  8. 18:06Adding Invariants to Data Structures
  9. 19:28Encoding Restrictions on Application Logic
  10. 26:49Full Circle
  11. 31:01Limitations of GADTS
  12. 32:13Conclusions
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.