Error handling is a tricky part of every developer’s life.
We’ve come a long way from exceptions and try-catch, but in certain situations, we’re still barely scratching the surface.
In this talk we’ll see how abstractions like standard MonadError in Scala and Haskell aren’t enough to handle errors in a principled matter.
Instead, we will look at different new abstractions that encode error handling into the type system to give us certain guarantees, like signaling that no errors can occur after having handled all previous errors.
This comes in handy, especially when dealing with effectful computations that might fail. Come see this talk to find out what principled error handling can do for you.