Universidad Interamericana de PanamáMateria: Compiladores InicioDocumentaciónTema 11Tema 4

11.Mini-Compilador de configuración

Este compilador procesa un lenguaje de texto que describe una calculadora y genera su archivo de configuración en XML y JSON. El XML es la entrada del compilador del Tema 4.

Se recompila mientras escribes. Ctrl+Enter también compila.
Compilando…

Etapas del compilador

Fuente → análisis léxico (tokens) → análisis sintáctico (árbol) → validación semántica (valores, rangos y reglas entre propiedades) → generación de XML/JSON.

Estructura

calculadora "Nombre" {
  propiedad: valor
  ...
}

// comentarios con doble barra

Propiedades

PropiedadValorPor defecto
titulotexto entre comillas (1–40 caracteres)el nombre
modobasica | cientificabasica
temaclaro | oscuroclaro
funcioneslista: suma resta multiplicacion division porcentaje y, solo en modo cientifica, potencia raiz sin cos tan log ln pilas 4 operaciones
decimalesentero 0–102
ancho / altopíxeles (280–800 / 360–900)360 / 520 (640 científica)
color_fondo color_pantalla color_texto color_botones color_operadores color_igualcolor #rrggbb o #rgbsegún el tema

Gramática

programa   := 'calculadora' CADENA '{' propiedad* '}'
propiedad  := IDENTIFICADOR ':' valor
valor      := IDENTIFICADOR | NUMERO | COLOR | CADENA | lista
lista      := '[' IDENTIFICADOR ( ',' IDENTIFICADOR )* ']'

Reglas semánticas

Aún no hay tokens.

Árbol sintáctico (AST)