[pyar] Curiosidades del lexer de CPython
Alejandro Santos
listas en alejolp.com
Mie Jul 25 23:31:22 ART 2012
2012/7/25 Claudio Freire <klaussfreire en gmail.com>:
>
> Igual, estuve mirando, no me vengan con chicanas, que el tokenizer de
> python también es un parser LL(1).
>
> :-p
>
Si querés verlo de esa forma, el tokenizer de Python no es un parser
LL(1) porque hace backtracking llamando a la funcion tok_backup(tok,
c2).
En un LL(1) tenés una tabla o alguna regla que te dice para cada
caracter o símbolo cual es la regla que le sigue, y no podés/tenés que
volver atrás.
http://en.wikipedia.org/wiki/LL_parser
El Tokenizer es un DFA. Va pasando por diferentes estados (en algunos
casos varios a la vez) hasta encontrar uno que cumpla con la regla
completa.
--
Alejandro Santos
More information about the pyar
mailing list