~/talk

Compiler-Level Static Checks: Enforcing Safe Functional Dev Patterns

Talkat Functional Conf 2025 · 2025-01-24..01-25· [compilers-and-language-design]
name:Piyush
slides:none on file

A GHC typechecker plugin enforces concrete rules across a codebase of 600k lines and hundreds of developers, rejecting patterns that caused real incidents. Two plugins are deployed: Domain Checker forbids marking enums as failed without validation, and Sheriff flags unsafe calls (head, show), rejects DB queries lacking index columns, and heuristically detects non‑terminating recursion. Rules live in YAML so teams configure checks per module; the plugins run at compile time and prevent regressions rather than catching them at runtime.

AI-written summary · about

  1. 0:00Compiler static checks intro
  2. 2:17Domain safety in FP
  3. 6:12Preventing recurring code issues
  4. 15:20Scalable compiler solutions
  5. 18:07Compiler plugins enforce rules
  6. 20:32Domain Checker & Sheriff plugins
  7. 26:36Q&A
~/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.