~/talk

Existential Types — Make OOP Great Again!

slides:none on file

Existential types are encoded as abstract type members so a Unix-style API can hide raw ints for file descriptors and force creation via open, eliminating forged 42 errors; UI examples use path-dependent types to model container/tabs state without unsafe wildcards (requires a trait work‑around because the compiler rejects the straightforward case class pack); plotting examples show type families that remove casts between Plot and Dataset; finally tagless DSLs give extensible interpreters.

AI-written summary · about

  1. 0:00Intro
  2. 0:15Outline
  3. 1:24Complexity
  4. 1:45Modularization and generalization
  5. 3:271.2 Square of abstraction
  6. 3:47Value parameters
  7. 4:42Scala square of abstraction (2)
  8. 5:48Scala square of abstraction (3)
  9. 7:53Scala square of abstraction (4)
  10. 9:10Scala square of abstraction (5)
  11. 10:24Use cases
  12. 10:35Scala interface for nix files API
  13. 11:51Hiding the File type
  14. 13:21Why is it different from using an opaque type?
  15. 14:23Encapsulation - summary
  16. 14:52User interface Component
  17. 15:19Counter component
  18. 15:43Container component
  19. 19:45Redesign Component with abstract type members
  20. 22:17Tabs - view implementation
  21. 22:32Modularization - summary
  22. 24:36Naive solution - XYPlot
  23. 25:54Solution with abstract type members
  24. 26:38Type families - summary
  25. 27:34Questions?
  26. 29:10Evaluating programs
  27. 29:40Generalizing interpreters
  28. 30:02Alternative encoding: language definition
  29. 30:47Alternative encoding: evaluation interpreter
  30. 31:15Alternative encoding: interpreting programs
  31. 31:48Finally tagless encoding - extensibility
  32. 33:23Type parameters vs type members (1)
  33. 34:33Finally tagless encoding - summary
  34. 36:05Tabs component implementation
~/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.