It seems that what we're converging towards is really not all that different from checked exceptions, just where the error type is an enum of possible errors ( ...