Construyendo el compilador Parte III: ANTLR V4, Listener vs Visitor y la tabla de Símbolos
Es importante destacar que en ocasiones no sabemos la orientación o guia que debemos tener. Pues bien, cuando empecé el proyecto de armar un compilador, no tenía entendido a cabalidad la parte del papel que tendría la tabla de simbolos acá. La tabla es el símil del disco duro. Los métodos y el recorrido del árbol nos permiten acceder a los nodos pero esto es "volátil" similar a la memoria ram de una computadora. Entonces, es válido el poder decir que esta metáfora ayuda a visualizar el papel de la tabla de símbolos. Pero, ¿porque es volátil los métodos? Resulta que ANTLR V4 probee dos formas de recorrer un árbol: listeners y visitor. Listener: permite recorrer automáticamente el árbol, y provee de métodos de "entrada" y "salida" de cada regla definida en la gramática. Visitor: da mas control al momento de iterar el árbol, pero no se recorre automáticamente sino en el orden indicado. Yo preferí trabajar con listener. Debido a que es mas sencillo y simple ...