Static typing, Python, D, DbC

Bearophile bearophileHUGS at lycos.com
Sun Sep 12 19:32:29 EDT 2010


Paul Rubin:
> I think DbC as envisioned by the Eiffel guy who coined (and trademarked)
> the term is that it's a static verification technique, marketing-speak
> annotating subroutines with pre- and post- conditions that can be
> checked with Hoare logic.  Runtime checks wouldn't qualify as that.

The implementations of DbC in D and C# run their tests at run-time
(but in theory an external tool may find a way to perform part of
those tests at compile-time).

A full implementation of DbC contains several other things beside
preconditions and postconditions, see http://www.python.org/dev/peps/pep-0316/
(it misses few things like loop invariants and loop variants).

For me DbC is useful almost as unit-testing (I use them at the same
time), this is why in the original post I have said it's one of the
things I miss most in Python.

Bye,
bearophile



More information about the Python-list mailing list