~/talk

Adding kind-polymorphism to the Scala programming language

Talkat Code Mesh LDN 2018 · 2018-11-08..11-09· [scala, compilers-and-language-design]
slides:none on file

Argues that adding kind-polymorphism to Scala lets type parameters accept constructors of any arity, implemented as a minimal prototype in the Typelevel Scala prototype and later adopted in Dotty/Scala 3. Demonstrates it shrinks shapeless-derived boilerplate (generic/generic1 families), exposes poly-kinded application and GADT encodings, and keeps JVM/runtime representation unchanged. Prototype compiles and simplifies signatures but application-site ergonomics remain clunky and further language-level support is still exploratory.

AI-written summary · about

  1. 0:00Intro
  2. 0:46What is kindpolymorphism
  3. 8:49Shapeless
  4. 21:19Kind
  5. 22:27Generic
  6. 23:54The first hurdle
  7. 24:28Encoding
  8. 27:24Type parameters
  9. 29:07Polytype application
  10. 29:22Polytype adoption
  11. 30:43Polytype examples
  12. 31:17Application example
  13. 32:02Modeling constraints
  14. 33:01Semantic constraints
  15. 34:23Examples
  16. 35:31Questions
  17. 38:26Jurys Paradox
  18. 39:07Subtyping
~/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.