3 ms·
What would you reply to this comment: https://news.ycombinator.com/item?id=37174698 https://news.ycombinator.com/item?id=37174698
by oblio 3y ago
What would you reply to this comment:
https://news.ycombinator.com/item?id=37174698 https://news.ycombinator.com/item?id=37174698
- layer8 3y agoI’m not the parent, but exception declarations are IMO necessary for a stable API contract. It’s exactly the same reason why return types are explicit. The actual issue in Java is that you can’t abstract over an arbitrary-length list (sum) of checked-exception types (variadic type parameters) (with the exception of rethrowing from multi-catch clauses).
- brabel 3y agoWell, that's kind of true! The fact checked Exceptions are inconvenient doesn't change the fact they are equivalent to returning a Result type (the implementation is obviously different but I think we don't need to mention that). A future version of Java could totally make it more convenient, and perhaps even make the implementation cheaper such that it would not just nearly the same , but literally the same as in Rust or other similar languages.
- piaste 3y agoDoes it even need a new language version? If the compiler already spits out the error "hey, your Fart() function should be annotated with 'throws ButtsException'", couldn't an IDE relatively easily be configured to automatically add the " throws " annotations?
- brabel 3y agoHave you ever used Java?? Any half decent IDE has done that since 2000.
- piaste 3y agoNever in anger - I've done some JVM coding, but always in Kotlin (which doesn't have checked exceptions). If Java IDEs have been able to automatically take care of checked exceptions forever, then why do people say that they're inconvenient?
- brabel 3y agoBecause the people saying that usually do not program in Java.