[Zope-dev] Re: [Geeks] Re: Interface Meta Data proposal

Cees de Groot cg@cdegroot.com
29 Nov 2000 08:59:27 +0100


Guido van Rossum <guido@python.org> said:
>When you've fully debugged an application, you turn both off.
>When you've fully debugged a library module, you create two versions:
>one with both turned off, for use in fully debugged applications, and
>one with pre-conditions on and post-conditions off, for use by other
>code that is still in need of debugging.
>
>I've heard that this works very well, and in Python 3000 (when we have
>optional static typing) I would love to add this to Python.  If it's
>not feature bloat.
>
It works very well in fully debugged applications. In the 99.99% other
applications, advice is to leave the assertions on during production
time so your app will fail fast when a bug pops up (profiling will
point you to the two assertions that needs to be turned off for 
acceptable performance).

Personally, but I'm talking without too much thinking here, I think
support for assertions in Python should be based on generic support
for metaprogramming - there's more than DBC that could benefit from
that (aspect-oriented programming, etcetera).


-- 
Cees de Groot               http://www.cdegroot.com     <cg@cdegroot.com>
GnuPG 1024D/E0989E8B 0016 F679 F38D 5946 4ECD  1986 F303 937F E098 9E8B