Why can Haskell exceptions only be caught inside the IO monad?

Viewed 2252

Can anybody explain why exceptions may be thrown outside the IO monad, but may only be caught inside it?

3 Answers
Related