~/talk

Type level Programming in Scala

Talkat ScalaCon 2022 · 2022-10-04..10-07· [scala]
links:none on file
slides:none on file

Scala 3 uses match types plus literal, singleton and refinement types to compute precise argument tuples for examples like a compile-time printf parser, a strongly-typed regex extractor and typed HTTP routes; a compiler prototype adds type-level arithmetic normalization (ordering and grouping but no automatic distribution) so non-constant sizes compare (e.g. xy == yx) and sized-vector operations and map typechecks; normalization is lazy, implemented in the compiler, and termination checks are currently stack-based only.

AI-written summary · about

  1. 0:00Introduction to precise types
  2. 1:32The necessity of type systems
  3. 3:33Literal and dependent types
  4. 5:57Type equality and refinements
  5. 9:21Compile-time operations
  6. 10:34Match types and printf example
  7. 13:21Implementing complex match types
  8. 17:53Type-safe HTTP routing
  9. 22:22Implementing the router
  10. 28:04Type-level arithmetic
  11. 32:52Normalization and reasoning
  12. 37:47Type-safe algorithms
  13. 40:51Challenges and future ideas
  14. 45:50Q&A session
~/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.