Léxico del lenguaje de programación ADA

Ciertamente no es muy agradable comenzar el estudio de un lenguaje con un tema tan árido como son los detalles de la construcción de cosas tales como identificadores y números, sin embargo ello es esencial para un conocimiento acabado de un lenguaje y, obviamente, para la correcta construcción de programas.

 

    1. Elementos léxicos

Un programa Ada se escribe como una secuencia de líneas de texto que contienen los siguientes caracteres:

      1. alfabeto a-z y A-Z
      2. dígitos  0-9

• otros caracteres “ # & ´( ) * + , – / : ; < = > _ |

      1. el carácter blanco

Se debe tener presente que los siguientes delimitadores compuestos no deben contener espacios:

•   =>                    usado en when, cases, etc.

      1. ..                      usado para rangos
      2. **                   para exponenciación
      3. :=                    para asignación
      4. /=                    no igual
      5. >=                   mayor o igual
      6. <=                   menor o igual
      7. <>                   para arreglos

 

– Identificadores
Un identificador se define de la siguiente manera: identifier ::= letter {[underline] letter_or_digit}
letter_or_digit ::= letter | digit
letter ::= upper_case_letter | lower_case_letter

Esto quiere decir que un identificador consiste en una letra seguida (posiblemente) de una o más letras o dígitos con subrayados aislados. Se pueden usar letras mayúsculas y minúsculas, las que no son tomadas como diferenciadores de identificadores, por ejemplo:

Sueldo_Base y SUELDO_BASE

son el mismo identificador. A pesar de esta libertad para escribir los identificadores, se recomienda, para una mejor legibilidad  usar minúsculas para las palabras reservadas y mayúsculas para los demás identificadores.
Ada no impone un límite en el largo del identificador, sin embargo, puede haber limitaciones impuestas por implementaciones específicas. De esta manara se estimula el uso de nombres de variables autodocumentados como SUELDO_BASE en lugar del poco significativo S.

 

Ejercicio: Indique cuáles de los siguientes identificadores son incorrectos y por qué

    1. Ada
    2. fish&chips
    3. RATE-OF-FLOW
    4. UMO164G
    5. TIME_ _LAG
    6. 77E2
    7. X_
    8. tax rate
    9. goto

 

 

    1. Números

Los números pueden ser enteros o reales. La mayor diferencia es que los reales siempre contienen un punto decimal y los enteros no. Es ilegal usar un entero donde el contexto indica que debe usarse un real y viceversa. Entonces

AGE: INTEGER := 43.9; y               WEIGHT: REAL := 150;

son expresiones incorrectas.

La forma más simple de un entero es una secuencia de dígitos, y la de un real es una secuencia de dígitos con un punto decimal. Nótese que debe haber al menos un dígito a cada lado del punto decimal.
A diferencia de otros lenguajes en Ada tanto los enteros como los reales pueden tener exponente, el cual se indica con una letra E (puede ser minúscula) seguida de un entero con o sin signo. El exponente no puede ser negativo en el caso de un entero (si así fuera el resultado podría no ser un entero). Por ejemplo el real 98.4 podría ser escrito con exponente de las siguientes formas:

9.84E1         98.4e0         984.0e-1         0.984E+2

pero 984e-1 sería incorrecto.

En forma análoga, el entero 1900 podría escribirse con exponente como: 19E2            190e+1                      1900E+0
pero  19000 e-1 sería incorrecto.
Ejercicio: Indique cuáles de las siguientes secuencias de dígitos son reales o enteros válidos. a)  38.6

  1. .5
  2. 32e2 d)  32e-2

e)  E+6
f)  27.4e_2

 

    1. Comentarios

 

 

ejemplo:

 

Un comentario en Ada es cualquier texto ubicado a la derecha de dos guiones (seguidos), por

— Este es un comentario

PUT(SQRT(2.5));  — Este es otro comentario

El comentario se extiende hasta el final de la línea.

También te podría gustar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *