with Ada.Text_IO;
use Ada.Text_IO;
procedure Hello is
begin
-- Este es un comentario
-- Ada.Text_IO.Put_Line ("Hello world!"); -- Si eliminamos `use`
Put_Line ("Hello world!"); -- Comentario en línea
end;Los programas en Ada suelen utilizar la extensión .adb
(ADa Body). Al igual que con la mayoría de los otros lenguajes
que hemos visto antes es necesario indicar el paquete que
contiene la función de interés, algo parecido a los
includes e imports que hemos visto en otros
lenguajes. En Ada, el equivalente es with. La clausura
use simplemente añade las definiciones en el modulo al
namespace, de forma que no es necesario escribir el nombre
del paquete antes de la función. De esta forma, podemos escribir
Put_line, en lugar de Ada.Text_IO.Put_Line… de
la misma forma que sucede con C++.
Como podéis imaginar a estas alturas, Put_Line añade un
retorno de carro a la cadena que escribimos en pantalla, mientras que
Put no lo hace. En general, los nombres utilizados en Ada
son muy descriptivos como acabamos de ver. Quizás C# tomo esta idea de
ADA?
La función (realmente procedimiento en el argot de Ada)
Put_Line nos permite escribir en la consola y la
proporciona el paquete Ada.Text_IO como hemos podido
comprobar.
SABIAS QUE
Ada tiene una sintaxis muy parecida a Pascal y Modula 2, dos de los lenguajes más importantes en el ámbito de la programación estructurada. Si bien nunca llegó a ser un lenguaje de propósito general popular, Ada es la elección para el desarrollo de sistemas críticos, tanto en la industria espacial como en el ámbito militar. Y lo creáis o no, se utiliza todavía hoy en día
Los comentarios en Ada van precedidos de dos signos menos
-- igual que en Lua o SQL, y no es posible definir
comentarios de más de una línea.
Como sucede con Java, el punto de entrada del programa debe ser un
procedimiento con el mismo nombre que el fichero que lo contiene. En
nuestro caso, el programa anterior debe estar almacenado en un fichero
llamado hello.adb.
Ada tampoco permite definir cadenas de caracteres multi-línea. Como sucedía con otros lenguajes, lo mejor que podemos hacer es concatenar los cachos de cadena que queramos. De la siguiente forma:
with Ada.Characters.Latin_1;
use Ada.Characters.Latin_1;
(...)
Put_Line ("No podemos definir cadenas " & CR & LF
& "de varias lineas de texto " & CR & LF
& "directamente " & CR & LF
& "-------------------------------");El paquete Ada.Characters.Latin_1 es el que define las
constantes CR (Carriage Return o retorno de carro)
y LF (Line Feed o Avance de línea).
Para compilar el programa utilizaremos el siguiente comando:
gprbuild hello.adb -o hello.ada.bin
o si estamos utilizando el paquete Gnat
gnat make hello.adb -o hello.ada.bin
El lenguaje Ada fué originariamente desarrollado por un equipo liderado por francés Jean Ichbiah en CII Honeywell Bull bajo un contrato con el Departamento de Defensa (el famoso DoD) de los Estados Unidos entre 1977 y 1983.
Ada fue diseñado para desarrollar sistemas embebidos y de tiempo real, y este sigue siendo su principal uso en la actualidad. Como os podéis imaginar toma su nombre de la primera programadora de la historia, Ada Lovelace, condesa de Lovelace e hija legítima de Lord Byron, conocido poeta romántico británico.
Resumen
- Lenguaje Compilado
- Extension:
adb - Terminador de líneas : Retorno de carro
- Agrupa instrucciones con :
begin instrucciones end - Comentarios multilinea : No existen
- Comentarios misma línea:
-- - Delimitador de cadenas:
"cadena" - Puedes imprimir textos con
Ada.Text_IO.Put_Line(Añade retorno de carro) - Soporte cadenas múltilínea: No soportadas. Puede concatenar cadenas
con
& - No Soporta
HERE-DOCS - Punto de Entrada: Procedimiento con el mismo nombre que el fichero
■
