Python Bytecode
Neal Norwitz
neal at metaslash.com
Fri Aug 2 14:36:17 EDT 2002
On Fri, 02 Aug 2002 12:53:27 -0400, Terry Reedy wrote:
> <emailed and posted>
> "Michael Hudson" <mwh at python.net> wrote ...
> http://www.python.org/doc/current/lib/bytecodes.html
>
> Thanks. I read this, found a couple of typos, and sent note to
> python-doc (don't have Source Forge login).
>
> Can you or someone answer a question regarding the following from the
> above:
> "
> JUMP_IF_TRUE delta
> If TOS is true, increment the byte code counter by delta. TOS is left on
> the stack.
>
> JUMP_IF_FALSE delta
> If TOS is false, increment the byte code counter by delta. TOS is not
> changed.
> "
>
> Why isn't TOS removed? Or, at least, why isn't there alternative
> bytecode that does so? Seems like most (all?) usages remove it anyway
> on both branches. For example (from your python-dev post)
I think it was a mistake or limitation from a long time ago.
Not sure, I wasn't around then.
However, the problem is known. When I was playing with removing it,
4 out of the six uses could be modified easily. But there
were 2 places (I think it was with code like: if x or y and z:)
which couldn't be fixed easily. The compiler is being rewritten
and hopefully fixing this will be easy once the rewrite is complete.
Neal
More information about the Python-list
mailing list