On Thu, 14 Jun 2012 14:14:54 +0200, Antoine Pitrou <solip...@pitrou.net> wrote: > On Thu, 14 Jun 2012 12:58:16 +0100 > Floris Bruynooghe <f...@devork.be> wrote: > > On 14 June 2012 11:25, Antoine Pitrou <solip...@pitrou.net> wrote: > > > Honestly, I think the best option would be to deprecate .pyo files as > > > well as the useless -O option. They only cause confusion without > > > providing any significant benefits. > > > > +1 > > > > But what happens to __debug__ and assert statements? I think it > > should be possible to always put assert statements inside a __debug__ > > block and then create -O a simple switch for setting __debug__ to > > False. If desired a simple strip tool could then easily remove > > __debug__ blocks and (unused) docstrings. > > I don't really see the point. In my experience there is no benefit to > removing assert statements in production mode. This is a C-specific > notion that doesn't really map very well to Python code. Do other > high-level languages have similar functionality?
What does matter though is the memory savings. I'm working with an application where the difference between normal and -OO is around a 10% savings (about 2MB) in program DATA size at startup, and that makes a difference for an ap running in a memory constrained environment. A docstring stripper would enable the bulk of that savings, but it is still nice to be able to omit code (such as debug logging statements) as well. --David _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com