2 ms·
But not with multiple return where (as an idiomatic design pattern) the same error object is passed up through the call stack until something decides to handle
by JulianMorrison 15y ago
But not with multiple return where (as an idiomatic design pattern) the same error object is passed up through the call stack until something decides to handle it, which is what the Either monad does. (And unlike exceptions, the Go way and the Either monad are both explicit, there are no unmarked returns.)
The C way with single return means that it's generally impossible to just forward the same error object - the caller has a different type from the callee, so where one returns null another has to return -1, and so forth.