Software bugs aren't inevitable

Mike Meyer mwm at
Sat Sep 17 02:05:04 CEST 2005

zen19725 at (phil hunt) writes:
> Compilers/interpreters/runtimes are black boxes: we don't (or
> shouldn't) care how they do their work as long as they run correctly 
> and aren't too heavy on system resources like CPU time and memory.

Maybe in academia. Not in the real world. Or maybe you just phrased
that last clause poorly. In the real world, programs have performance
constraints. Some of them are seriously inflexible - in which case we
call what we're doing "real-time" or "embedded" or words to that
effect. Others are softer, but in the end they matter *very much*. I
would have phrased that last clause to make reasonableness a
requirement, rather than making "not unreasonable" the requirement.

Because of that, you have to care about how your implementation
works. If you don't know how strings work in Python, you tend to write
O(n^2) algorithms instead of O(n) ones for fundamental
operations. Things like that make a difference.

Mike Meyer <mwm at>
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.

More information about the Python-list mailing list