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.

Reply via email to