Who's minister of propaganda this week?

Alex Martelli aleaxit at yahoo.com
Thu Mar 15 20:28:57 CET 2001

"Don Dwiggins" <dwig at advancedmp.net> writes:

> Alex Martelli writes:
> > Another way to express it: an interface is not just, not even
> > _mostly_, about existence and signature of methods -- it's mostly
> > about prereq's, post-conditions, and invariants; and nobody can
> > check those at compile-time in enough cases to make a difference
> > to your software's reliability.
> I agree whole-heartedly with the first clause, but I wonder: if you made
> same statement over on comp.lang.eiffel, what kind of response would you
> get from folks who use the language extensively?  Are Eiffel's prereq's,
> post-conditions, and invariants mostly ignored in practice, or are they
> commonly and effectively used?

AFAIK, the latter -- I don't know anybody who regularly posts on c.l.e,
but we do have ex-Eiffelists on our technical staff, and they were such
effective evangelists for the effectiveness of 'contracts' that we invested
considerable effort in preparing and using a C++ 'programming-as-
contracting' framework that is regularly used for our software production
(a constant grumble heard about COM, to which we are more and more
switching for all inter-component connectivity, is that there is no such
support -- we haven't expended the needed effort to prepare it, and
are now dissuaded from so doing by the perspective of moving to .NET,
which _does_ have some contract-support infrastructure already).

But contract-checking is done _at runtime_ (and often disabled for
production runs/releases, for those components whose need for speed
_justifies_ the use of fast-code-generating languages such as Eiffel
or C++...).


Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

More information about the Python-list mailing list