Linked by Thom Holwerda on Mon 18th Jul 2005 17:07 UTC, submitted by haysmz
General Development The Spec# programming system is a new attempt at a more cost effective way to develop and maintain high-quality software. Spec# is an extension of the object-oriented language C#. It extends the type system to include non-null types and checked exceptions. It provides method contracts in the form of pre- and postconditions as well as object invariants.
Thread beginning with comment 5994
To read all comments associated with this story, please click here.
Contracts!
by Calroth on Mon 18th Jul 2005 23:28 UTC
Calroth
Member since:
2005-07-07

If there's anything I learned about C# and Java, it is there is no easy answer to checked vs. unchecked exceptions. There are some very persuasive arguments either way, and anyone who says that one is definitely better than the other is under-informed.

But anyway, all this should become irrelevant. Because of... contracts! Pre- and post-conditions and invariants. In my opinion, designing with these in mind is much smarter than designing around exceptions. Not that they make exceptions obsolete, but they truly become exceptional - as they should be! Whereas contracts should become everyday and iron-clad - as they also should be.