Tengo un conjunto de definiciones de funciones escritas en un lenguaje tipo C con algunas palabras clave adicionales que se pueden poner antes de algunos argumentos (de la misma manera que "sin firmar" o "registrar", por ejemplo) y necesito analizar estas líneas, así como algunos stubs de función y generar código C real de ellos.¿La forma más efectiva de analizar las cadenas de definición tipo C?
¿Es correcto que Flex/Yacc sea la forma más adecuada de hacerlo?
¿Será más lento que escribir un script de Shell o Python usando expresiones regulares (que puede ser muy complicado, supongo, si el número de palabras clave adicionales aumenta y sus efectos serían diferentes) siempre que no tenga cero experiencia con analizadores/analizadores sintácticos (aunque sé cómo LALR hace su trabajo)
¿Hay algún buen material en Lex/Yacc que cubra problemas similares? Todos los documentos que pude encontrar usan el mismo ejemplo primitivo de una calculadora de "juguete".
Cualquier ayuda será apreciada.
su visión es un poco restrictiva, creo ... – LB40
@Mitch Wheat: Creo que se está refiriendo a su comentario sobre ANTLR que superó Lex \ Yacc. –
ANTLR no ha "reemplazado" a Lex/Yacc. Ha demostrado ser una alternativa viable. El análisis LALR no está muerto por una posibilidad remota. –