4 ms·
Signaling to caller has already been shown to be a complete mistake with java checked exceptions, I don't understand why people persist with this. It makes for
by jcelerier 4y ago
Signaling to caller has already been shown to be a complete mistake with java checked exceptions, I don't understand why people persist with this. It makes for ridiculous code.
- jstimpfle 4y agoAre you saying that "not signaling" has not been shown to be a total maintenance nightmare as well? Because the only way it is not ever a maintenance nightmare is when you really don't care that function execution could be aborted at any point without any visual clue. And the only way I can see you wouldn't care is when you go 100% in to everything-context managed / RAII or similar. And that again, sorry but I can't be arsed to prematurely rip everything into little pieces like that. It makes for terrible code IMO.
- mike_hock 4y agoBut you can be "arsed" to write an error handler after almost every single function call?
- jstimpfle 4y agoI explained here that I consider having to check many return values to be a smell: https://news.ycombinator.com/item?id=34217251 https://news.ycombinator.com/item?id=34217251 And from my own experience, no I don't have to check a lot of return values.
- masklinn 4y ago> Signaling to caller has already been shown to be a complete mistake with java checked exceptions It's not signalling which has been shown to be a complete mistake, but checked exceptions, more specifically as implemented by Java. Signalling works just fine and is actually rather enjoyable when done well.
- kllrnohj 4y agoCan you point to an example? What has "signaled exceptions"?
- masklinn 4y ago> Can you point to an example? Rust, Swift, Erlang, Haskell, ... > What has "signaled exceptions"? Java. It's not clear what you're asking. My comment noted that signalling the possibility of errors to caller (in general) is valuable. jcelerier objected with java's checked exceptions as a counter-example, as they signal to the caller, but they're shit. However that's not a counter example, that's just java's checked exceptions being a shitty implementation of the idea.