Exceptions are bad.
Not only do we have to remember to catch them everywhere, they also provide a second implicit exit strategy for functions, similar to the goto
statement.
However, there is an alternative more explicit approach.
In this post we will go through an example of how to implement decent functional error handling in F# without using NULL or exceptions.
We will do this by extending the application from the last post and make it even more reliable and robust.