~/talk

Use Site Checking Considered Harmful

Talkat Onward! 2024 · 2024-10-23..10-25
links:none on file
slides:none on file

Argues that use-site checking—deferring generic type checks until concrete instantiation—pushes errors to call sites, breaks local reasoning, and lets hidden or stealthy requirements slip past until surprising failures occur. Uses a concrete mean example and C++ templates to show errors reported far from their origin, describes “type imposture” where incidental operators satisfy constraints, and compares alternatives: add template-expansion debugging or adopt richer declaration-site type systems (Swift/Scala/Haskell-style protocols/traits) so generic code is checked at definition time.

AI-written summary · about

  1. 0:00Introduction
  2. 1:02Python to static typing
  3. 8:44Problems with use site checks
  4. 17:32Stealthy requirements
  5. 23:13Solutions for static types
  6. 27:46Conclusion
  7. 29:54Q&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.