My objection to checked exceptions is I suspect slightly different to some.
In theory, they are a great idea. An extension to the static type system (as such, its surprising that all exceptions in Scala aren't checked!). The theory is that you write your code and force the user of your API to actually think about the errors that might occur. However, after 15 years, all the evidence is that this fails the usability requirement. The mass of developers (right up to Sun) are clearly unable to *use* this feature in a useful and meaningful way. Thats all - the entire total of the argument for me. Despite year after year of discussion, conference talks, forum discussions, code reviews and much more, the Java community hasn't managed to produce an agreed and successful use of the feature. Examples in this case include all the catch and ignore, catch and rethrow, adding of "Exception" to every single throws clause, disagreement on how exception hierarchies should be structured, arguments over whether a particular exception should be checked or unchecked, and many more. Thus, no matter how good a feature is in theory, how useful it might be, how its "just a matter of training" or "using it properly", the absence of successful usage and the presence of unsuccessful usage tells you all you need to know - its a failure. Usability is the only criteria that matters. Stephen -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
