[pyar] Curiosidades del lexer de CPython

Daniel Moisset dmoisset en machinalis.com
Mie Jul 25 09:54:20 ART 2012


2012/7/25 Claudio Freire <klaussfreire en gmail.com>:
>
> Sin embargo, si tratás de hacer lo mismo con un entero, no sucede,
> pues el parser debería poder saber que la "e" de "else" no es
> indicación de un exponente. Python usa un parser ELL(1), que sólo
> tiene un símbolo de "lookahead", así que no puede diferenciar, en este
> caso, el exponente de un else, mientras mira el "1". Así que empieza,
> ve el 1, dice "número". Ve la "e", dice "exponente"... si ve un "0",
> cierra bien con exponente. Pero si ve una "l", dice "oops". Se ve en
> el código del ELL(1)[1]

Lo que pasa tiene que ver con la "e" del else, ero no con el parser
ELL(1), el error este se produce en la etapa de tokenizing, previa al
parser.

Saludos,
   D.



More information about the pyar mailing list