Debe introducir al menos 3 caracteres en el buscador.
Inicio / Wikis / Cursos gratis / Curso de Ada - Elementos del lenguaje

Curso de Ada - Elementos del lenguaje

 ****- (10 opiniones)
GNU Free Documentation License Curso gratis de José Alfonso Malo Romero - 16 de Marzo de 2006
Temas Relacionados: Programación estructurada
6. Elementos del lenguaje

Alfabeto


El alfabeto de Ada consta de:

  • Letras mayúsculas: A, ..., Z y minúsculas: a, ..., z.
  • Dígitos: 0, ..., 9.
  • Caracteres especiales.

Es de destacar que en Ada 95 se admiten caracteres como 'Ñ', 'Ç' y vocales acentuadas ya que se permiten los 256 caracteres comprendidos en ISO Latin-1.

El alfabeto de minúsculas puede usarse en vez de o junto con el alfabeto de mayúsculas, pero se considera que los dos son idénticos (a excepción de las cadenas de caracteres y literales tipo carácter).

Componentes léxicos


Se pueden encontrar en Ada los siguientes componentes léxicos:

  • Identificadores
  • Literales numéricos
  • Literales de tipo carácter
  • Cadenas de caracteres
  • Delimitadores
  • Comentarios
  • Palabras reservadas

Hacer constar, que el espacio no constituye nada más que un separador de elementos léxicos, pero es muy importante utilizarlos para una mayor legibilidad, tanto dentro de las sentencias, como elemento de sangrado para ayudar a diferenciar los bloques.

Ejemplo:

Temperatura_Sala := 25; -- Temperatura que debe tener la sala.

Esta línea contiene 5 elementos léxicos:

  • El identificador Temperatura_Sala.
  • El delimitador compuesto :=.
  • El número 25.
  • El delimitador simple ;.
  • El comentario -- Temperatura que debe tener la sala..

Identificadores


Definición en BNF:

identificador ::= letra { [ subrayado ] letra | cifra } letra ::= A | ... | Z | a | ... | z cifra ::= 0 | ... | 9 subrayado ::= _

Aunque dentro de esta definición entrarían las palabras reservadas que tienen un significado propio en el lenguaje y, por tanto, no pueden ser utilizadas como identificadores.

Nota: en la versión Ada 95 se incorporan los caracteres de Latin-1, con lo que se pueden escribir identificadores como Mañana o Jabalí.

No hay límite en el número de caracteres de un identificador, aunque todo identificador deberá caber en una única línea.

Es recomendable utilizar nombres significativos como HoraDelDia y no H, carente de significado.

Ejemplos:

Son identificadores Ada los siguientes:

HoraDelDía Hora_Del_Día Mañana Jabalí contador ALARMA

NO son identificadores Ada válidos los siguientes:

_Hora_Del_Día 2a_vuelta Inicio_ Access Precio_en_$ AlarmaGeneral

Como ejercicio intenta averiguar por qué.

Números


Los literales numéricos constan de:

  • dígitos 0 .. 9
  • el separador de decimales .,
  • el símbolo de exponenciación e o E,
  • el símbolo de negativo - y
  • el separador _.

Como ejemplo, el número real 98,4 se puede representar como: 9.84E1, 98.4e0, 984.0e-1 ó 0.984E+2. No estaría permitido 984e-1.

Para representación de número enteros, por ejemplo 1.900, se puede utilizar 19E2, 190e+1 ó 1_900E+0. Sirviendo el carácter _ como mero separador para una mejor visualización.

Una última característica es la posibilidad de expresar un literal numérico en una base distinta de 10 encerrando el número entre caracteres #, precedido por la base: un número entre 2 y 16. Por ejemplo, 2#101# equivale a 101 en base binaria, es decir al número 5 en decimal. Otro ejemplo con exponente sería 16#B#E2 que es igual a 11 × 16² = 2.560 (nótese que es 16² y no 10² porque la base en este caso es 16).

Literales de tipo carácter


Contienen un único carácter, por ejemplo: A. Aquí sí se diferencian mayúsculas de minúsculas. Se delimitan por un apóstrofe.

Ejemplos:

'A' 'ñ' '%'

Cadenas de caracteres


Contienen uno o varios caracteres y se delimitan por el carácter de dobles comillas: ", por ejemplo: "ABC". En este caso se diferencian mayúsculas de minúsculas.

Delimitadores


Los delimitadores pueden ser uno de los siguientes caracteres especiales:

& ' ( ) * + , - . / : ; < = >

O ser uno de los delimitadores compuestos por dos caracteres especiales:

=> .. := /= >= <= << >> <>

Comentarios


Los comentarios se utilizan para ayudar a comprender los programas y lo constituye toda parte de texto precedida de dos guiones (--) hasta el fin de línea. No existe la posibilidad de insertar otro elemento léxico en la misma línea a partir de los dos guiones, es decir, el resto de la línea se interpreta como comentario en su totalidad.

-- Este comentario ocupa una línea completa. Mis_Ahorros := Mis_Ahorros * 10.0; -- Este está después de una sentencia. Mis_Ahorros := Mis_Ahorros * -- Este está entre medias de una sentencia que ocupa dos líneas. 100_000_000.0;

Palabras reservadas


Como el resto de los elemento léxicos, las palabras reservadas de Ada son equivalentes tanto en mayúsculas como en minúsculas. El estilo más extendido es escribirlas completamente en minúsculas.

En Ada las palabras reservadas pueden tener un uso distinto dependiendo del contexto, los distintos usos de cada una se puede consultar en el capítulo Palabras reservadas.

||
abort || else || new || return || ||
||
abs || elsif || not || reverse || ||
||
abstract || end || null || || ||
||
accept || entry || || select || ||
||
access || exception || of || separate || ||
||
aliased || exit || or || subtype || ||
||
all || || others || || ||
||
and || for || out || tagged || ||
||
array || function || || task || ||
||
at || || package || terminate || ||
|| ||
generic || pragma || then || ||
||
begin || goto || private || type || ||
||
body || || procedure || || ||
|| ||
if || protected || until || ||
||
case || in || || use || ||
||
constant || is || raise || || ||
|| || ||
range || when || ||
||
declare || limited || record || while || ||
||
delay || loop || rem || with || ||
||
delta || || renames || || ||
||
digits || mod || requeue || xor || ||
||
do || || || || ||

Manual de referencia de Ada


Tabla de contenidos
  1. 1 - Introducción
  2. 2 - Historia
  3. 3 - Manual de referencia
  4. 4 - Instalación
  5. 5 - Hola Mundo
  6. 6 - Elementos del lenguaje
  7. 7 - Tipos
  8. 8 - Enteros
  9. 9 - Enumeraciones
  10. 10 - Coma flotante
  11. 11 - Coma fija
  12. 12 - Arrays
  13. 13 - Strings
  14. 14 - Registros
  15. 15 - Registros discriminados
  16. 16 - Registros variantes
  17. 17 - Punteros a objetos
  18. 18 - Punteros a subprogramas
  19. 19 - Tipos derivados
  20. 20 - Tipos etiquetados (orientación a objetos)
  21. 21 - Subtipos
  22. 22 - Objetos (variables y constantes)
  23. 23 - Atributos
  24. 24 - Expresiones
  25. 25 - Operadores
  26. 26 - Sentencias y estructuras de control
  27. 27 - Subprogramas
  28. 28 - Sobrecarga
  29. 29 - Entrada/salida
  30. 30 - Pragmas
  31. 31 - Interfaz con otros lenguajes
  32. 32 - Diseño y programación de sistemas grandes
  33. 33 - Paquetes
  34. 34 - Clausula use
  35. 35 - Clausula with
  36. 36 - Paquete Standard
  1. 37 - Declaraciones
  2. 38 - Ámbito
  3. 39 - Visibilidad
  4. 40 - Renombrado
  5. 41 - La biblioteca Ada (unidades y subunidades)
  6. 42 - Unidades de biblioteca
  7. 43 - Unidades hijas
  8. 44 - Subunidades
  9. 45 - Compilación separada y dependiente
  10. 46 - Tipos abstractos de datos
  11. 47 - Tipos limitados
  12. 48 - Unidades genéricas
  13. 49 - Excepciones
  14. 50 - Paquete Ada.Exceptions
  15. 51 - Concurrencia
  16. 52 - Tareas
  17. 53 - Sincronización de tareas mediante puntos de entrada o citas (entry)
  18. 54 - Aceptación de citas (accept)
  19. 55 - Selección de citas (select)
  20. 56 - Llamadas a punto de entrada complejas
  21. 57 - Tareas dinamicas: creación dinamica de tareas (tipos t
  22. 58 - Dependencia de tareas
  23. 59 - Ejemplos de tareas
  24. 60 - Programación distribuida con GLADE
  25. 61 - Novedades de Ada 2005
  26. 62 - Unidades predefinidas
  27. 63 - Paquete Ada.Strings.Fixed
  28. 64 - Paquete Ada.Strings.Unbounded
  29. 65 - Paquete Ada.Text_IO
  30. 66 - Paquete Ada.Text_IO.Editing
  31. 67 - Paquete Ada.Float_Text_IO
  32. 68 - Paquete Ada.Sequential_IO
  33. 69 - Paquete Ada.Command_Line
  34. 70 - Paquete Interfaces
  35. 71 - Recursos en la Web
Autor y licencia de 'Curso de Ada - Elementos del lenguaje'
José Alfonso Malo Romero Extraído de: http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Ada_/_Introducci%C3%B3n GNU Free Documentation License
El contenido está disponible bajo los términos de GNU Free Documentation License
Licencia GNU Free Documentation License: http://www.gnu.org/copyleft/fdl.html
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Wikis relacionados con 'Curso de Ada - Elementos del lenguaje'

Que la ideología política (quizá sea mejor llamarla ideología a secas [1]) influye en el... Más »
En sentido estricto, el lenguaje coloquial no es sino el producto de una determinada modalidad... Más »
En los años setenta convergen en España una serie de discursos vinculados a conceptos de... Más »
XML es un metalenguaje, es decir, un lenguaje hecho para poder construir otros lenguajes con... Más »
XML es un metalenguaje, es decir, un lenguaje hecho para poder construir otros lenguajes con... Más »
Gente Wiki
Isaac Benitez Fernandez
Comunicador social y docente universitario, actualmetne dedicado a la investigación en ciencias sociales aplicadas a proyectos de desarrollo para sectores...
Ana
Trabajo en el mundo de la logística desde hace seis años y, aunque empecé como administrativa, el año pasado entré...
Logística integral
Enrique J. Iglesias
Soy consultor de empresas con inquietud de aprender siempre un poco más, utilizando todos los recursos a mi alcance. Tengo...
Antoni Amenós
He dedicado 30 años de mi vida a la estrategia aplicada al marketing y a las ventas, principalmente creando proyectos...
Nilo Omar
De profesión auditor. Tengo maestria en ingenieria financiera y me gusta tener amigos con quienes intercambiar ideas.
Banca privada, Cajas de ahorro,...
Verónica Marín L.
Hola, trabajo en el área de las telecomunicaciones, atención clientes. Me interesa ampliar mis conocimientos en excel, sobre todo en...
Suscribirse
¿Estás seguro de que deseas eliminar este capítulo?