Remix.run Logo
veleon 2 days ago

I think OP means using Result<T> where Right in the Either is always implied to be Exception, much like Fin<A> in language-ext [0]

[0] https://louthy.github.io/language-ext/LanguageExt.Core/Monad...

louthy 2 days ago | parent [-]

I think you mean Left. And Left in Fin is Error, which has two subtypes: Expected and Exceptional, along with bespoke matching primitives for exceptional and non-exceptional errors (for the reasons I outlined)

I understood what they meant, Exception is still a poor type for declarative error handling, because it’s unclear whether an event is truly exceptional.