When do you prefer throwing exceptions vs returning something like a Result/Result<T> type?
I've seen people say exceptions should only be used for truly exceptional cases, while expected failures should be modeled with a Result type.
Personally, it often feels simpler to just throw an exception and handle/parse it in a global exception handler instead of returning a Result everywhere.
Curious what approach you usually take and why.