Liza: Análisis Léxico y Sintáctico en JavaCC
Liza es un lenguaje ideado por mí (Rapt), sólo con fines educativos, es un lenguaje caso-sensible, es decir las mayúsculas son distintas a las minúsculas Este lenguaje tiene la siguiente estructura:
Liza
Nombre_del_Programa;
inicia
...
Instrucciones...
termina.
Liza acepta el siguiente conjunto de instrucciones:
lee
ID.
pon (ID ó
Cadena).
ciclo No_de_veces
{ ... Instrucciones... }.
repite Condición
{ ... Instrucciones...}.
si Condición
{ ... Instrucciones... }.
toma ID {
Entero: [ ... Instrucciones... ] ... }.
Donde:
ID.
Es un identificador que empieza con una letra (incluyendo la ñ) o con
un guión bajo y le siguen letras, números y guiones bajos.
Cadena.
Es un conjunto de caracteres escritos entre comillas (") para delimitar
la cadena.
No_de_veces.
Es un número entero.
Condición.
Es una comparación entre dos o mas valores e identificadores con los
operadores relacionales ( =, >, <, >=, <= y <>, no incluye
and, or ni xor).
En Liza las asignaciones se hacen de la siguiente manera:
ID = Operación.
Donde:
Operación. Es un conjunto de operaciones entre valores e identificadores. Los simbolos aceptados son +, -, *, /.
A continuación veremos un código de ejemplo que utiliza todas las instrucciones del lenguaje Liza:
Aquí esta el código fuente en JavaCC de Liza (análisis Léxico y Sintáctico):