But it's defined as 'Result error value', which means you can just make 'error' a union type, and now you have multiple kinds of exceptions. When you specify an error type, you're basically specifying all the types of exceptions that the evaluation can raise.
But it would be less descriptive from an API point of view. Which type is the return value? Of course we are now in the land of hypotheticals.