~/talk

Exceptional Haskell

Talkat LambdaConf 2018 · 2018-06-03..06-05· [typescript]
links:none on file
slides:none on file

Claims concrete tradeoffs: Haskell has both synchronous and asynchronous runtime exceptions, try/catch/bracket use Typeable + AnyException with runtime type equality, and using Either/ExceptT incurs an Either/ExceptT slowdown: extra if + pointer deref in tight loops. There are practical tools and patterns: classy prisms for composable typed exceptions, monad-error/MTL, monadST/monad-throw tricks, and the TypeError trick for custom instance errors. PureScript’s row types solve grow/shrink of error sets; attempts to port that to Haskell (ongoing since January) repeatedly stall.

AI-written summary · about

  1. 0:00Introduction
  2. 1:17Exceptions
  3. 3:11Go
  4. 3:52Error Handling
  5. 5:56Exceptional Semantics
  6. 6:06Undefined
  7. 6:56Bottom
  8. 7:28Synchronous Exceptions
  9. 8:00Precise Exceptions
  10. 8:14Java
  11. 9:20laziness
  12. 11:00welcome to programming
  13. 11:26either type
  14. 11:57performance
  15. 12:35monad ste
  16. 14:19tradeoffs
  17. 17:15exception types
  18. 18:32possibility spaces
  19. 19:58types
  20. 27:56iid
  21. 41:54Haskells exception system
  22. 42:38Best practices
  23. 42:55Debugging exceptions
  24. 43:34Error strings
  25. 44:12Leave comments
  26. 44:34Type signature
  27. 45:40OpenFile
  28. 47:17TypeError
  29. 48:08ERException
  30. 49:43Debugging
  31. 50:25payload
  32. 50:46exception
  33. 51:43social media
  34. 52:39pro approach
  35. 52:56type error
  36. 54:14IOT exceptions
  37. 54:49polymorphism
  38. 55:15row polymorphism
  39. 56:30typelevel lists
~/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.