All About Exceptions

Should cover:

  • Throwing exceptions
  • Catching exceptions
  • Exceptions in pure code
  • Difference between throw and throwIO
  • Async exceptions
  • Catching all exceptions
  • http://www.yesodweb.com/blog/2014/05/exceptions-cont-monads
  • https://www.fpcomplete.com/user/snoyberg/general-haskell/exceptions/exceptions-and-monad-transformers
  • https://www.fpcomplete.com/user/snoyberg/general-haskell/exceptions/catching-all-exceptions
  • Exceptions problems. Can't wrap. Can't have two exceptions. No idea how exception was thrown.
  • Wrap exceptions to provide context
  • General dislike of exceptions
  • enclosed-exceptions
  • Examples of code-conversion between all possible error styles
  • unexceptionalio and errors libraries