[Python-Dev] Oddity in AST for 3-argument slices

Greg Ewing greg.ewing at canterbury.ac.nz
Thu Aug 19 12:35:34 CEST 2010


Nick Coghlan wrote:

> Or else it's just an accident of implementation, since the AST doesn't
> actually *need* to distinguish those two cases.

It doesn't seem to be an accident, because ast_for_slice()
goes out of its way to manufacture a Name node for the
missing argument.

It doesn't seem to significantly simplify the compiler
either, because compiler_slice() could just as easily
treat it the same way as the other slice arguments and
emit an instruction to load None if it's missing.

So it's a mystery. Perhaps it made life easier for some
earlier version of the compiler.

-- 
Greg




More information about the Python-Dev mailing list