[Loro-dev] gramaticas
Status: Beta
Brought to you by:
carueda
From: Carlos R. <ca...@uc...> - 2003-02-04 21:09:12
|
adrian15 <bea...@go...> escribio: >sobre lexers, parsers, compiladores y demás. En el loro, veo que > se ha usado Javacc. ¿La gramática se ha generado con un generador de > gramáticas,... ¿o a mano?? Donde encontrar documentacion sobre como > construir una gramática en Español. Escribi la gramatica a mano pero me ayude en buena parte de la que viene de Java en la documentacion de javacc (muchas expresiones y statements son esencialmente similares). Como se trata de una tecnica descendente (top-down) hay que evitar la recursion izquierda (lo que no sucederia si se usara un analizador bottom-up como yacc, bison, JavaCUP y SableCC). Hay recursion izquierda cuando escribes algo como: expr ::= expr + blablabla Todo lo que aprendi de javacc fue desde que era un producto de Sun y luego de metamata (metamata.com). Resulta que hace un tiempo WebGain adquirio metamata y aunque parece que mantienen el producto, no he revisado bien si la documentacion sigue alli. Mi recomendacion es que tomes gramaticas ya escritas que te sirvan de guia, por ejemplo de http://www.cobase.cs.ucla.edu/pub/javacc/ Quiza quieras examinar ANTLR, que al parecer goza de mas aceptacion que JavaCC porque es "mas libre". Si yo tuviera mas tiempo, exploraria ANTLR como alternativa para Loro. SableCC tambien me parecio bastante atractivo como "object-oriented framework that generates compilers (and interpreters) in the Java programming language." pero parece que no es aun ampliamente usado(?) |