Saltar a: navegación, buscar

ADA

Ada (lenguaje de programación)
Información sobre la plantilla
Programación Ada.jpg
Lenguaje de Programación orientado a objetos
Creador Jean Ichbiah de Cii Honeywell Bull
Desarrollador Jean Ichbiah de Cii Honeywell Bull
Diseñado por Jean Ichbiah de Cii Honeywell Bull
Lanzamiento inicial1983
VersionesAda 83
Última versión estableAda 95
GéneroLenguaje multipropósito, orientado a objetos y concurrente
Sistemas Operativos compatiblesLinux, Windows, UNIX,

Ada es un lenguaje de programación orientado a objetos, fue diseñado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa de los Estados Unidos, Durante los años 1970. Es un lenguaje multipropósito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++.

Introducción

¿Qué es un lenguaje de programación?. Un conjunto de sintaxis y reglas semánticas que definen los programas del computador. Es una técnica estándar de comunicación para entregarle instrucciones al computador. Un lenguaje le da la capacidad al programador de especificarle al computadora, qué tipo de datos actúan y que acciones tomar bajo una variada gama de circunstancias, utilizando un lenguaje relativamente próximo al lenguaje humano. Un programa escrito en un lenguaje de programación necesita pasar por un proceso de compilación, interpretación o intermedio, es decir, ser traducido al lenguaje de máquina para que pueda ser ejecutado por el ordenador. Los lenguajes de programación pueden ser clasificados de acuerdo a diversos criterios:

  • Lenguajes interpretados (Interpretes) como Basic, Dbase.
  • Lenguajes compilados (Compiladores) como C, C++, Clipper.
  • Lenguajes interpretados con recolectores de basura (Maquina Virtual) como Smalltalk, Java, Ocaml.
  • Lenguajes Scripts (Motor de ejecución) como Perl, PhP.

Historia

Lenguaje de programación diseñado por Jean Ichbiah de Cii Honeywell Bull por encargo del Departamento de Defensa de los EE.UU. para unificar el uso de los lenguajes de programación en los proyectos que le fuesen entregados. Es un lenguaje diseñado con la seguridad en mente y es multipropósito, pudiendo llegar desde la facilidad de Pascal a la flexibilidad de C pero con una filosofía orientada a la reducción de errores. Su nombre conmemora a la condesa Ada Lovelace, hija de Lord Byron, a quien se considera la primera programadora de la Historia, por su relación con Charles Babbage, creador de la máquina analítica. El Departamento de Defensa de los Estados Unidos y los ministerios equivalentes de varios países europeos exigen la utilización de este lenguaje en los proyectos realizados bajo su patrocinio. También es usado en otros entornos en los que también se necesita una gran seguridad como la gestión del tráfico aéreo (en empresas como Boeing o la española Indra). Ada se diseñó de manera que permita evitar los errores comunes y difíciles de descubrir. Esto puede hacer que sea muy irritante para los programadores principiantes.

El lenguaje se convirtió en un estándar de ANSI en 1983 (ANSI/MIL-STD 1815) y un estándar ISO en 1987 (ISO-8652:1987). Hasta la fecha la ISO ha publicado dos ediciones del estándar de Ada: la original Ada 83 que incluía conceptos novedosos como las excepciones y la programación genérica; y la revisión Ada 95, que entre otras cosas añadió la capacidad de herencia para completar sus características de lenguaje OOP.

Un compilador de Ada muy usado es GNAT, originalmente desarrollado por la Universidad de Nueva York y mantenido en la actualidad por Ada Core Technologies. Está basado en la tecnología de GCC y es software libre.

Compiladores

Un compilador de Ada muy usado es GNAT, originalmente desarrollado por la Universidad de Nueva York bajo patrocinio del DoD. Está basado en la tecnología de GCC y es software libre. Actualmente está mantenido por AdaCore (antes llamada Ada Core Technologies), empresa que ofrece soporte y servicios sobre el compilador.

Características

La sintaxis, inspirada en Pascal, es bastante legible incluso para personas que no conozcan el lenguaje. Es un lenguaje que no escatima en la longitud de las palabras clave, en la filosofía de que un programa se escribe una vez, se modifica decenas de veces y se lee miles de veces (legibilidad es más importante que rapidez de escritura).

Es indiferente el uso de mayúsculas y minúsculas en los identificadores y palabras claves, es decir es un lenguaje case-insensitive. En Ada, todo el programa es un único procedimiento, que puede contener subprogramas (procedimientos o funciones). Cada sentencia se cierra con end qué_cerramos. Es un modo de evitar errores y facilitar la lectura. No es necesario hacerlo en el caso de subprogramas, aunque todos los manuales lo aconsejan y casi todos los programadores de Ada lo hacen.

El operador de asignación es :=, el de igualdad =. A los programadores de C y similares les puede confundir este rasgo inspirado en Pascal.

La sintaxis de atributos predefinidos es Objeto'Atributo (o Tipo'Atributo) (nota: esto sólo aplica a atributos predefinidos por el lenguaje, ya que no es el concepto de atributo típico de OOP). Se distingue entre "procedimientos" (subrutinas que no devuelven ningún valor pero pueden modificar sus parámetros) y "funciones" (subrutinas que devuelven un valor y no modifican los parámetros).

Muchos lenguajes de programación no hacen esta distinción. Las funciones de Ada favorecen la seguridad al reducir los posibles efectos colaterales, pues no pueden tener parámetros in out.

Ejemplo

Código fuente escrito en Ada

Éste es el típico "Hola EcuRed" escrito en Ada:
with Ada.Text_IO;

procedure Hola_EcuRed is
begin
  Ada.Text_IO.Put("¡Hola, EcuRed!");
end Hola_EcuRed;

Fuente

  • [1]
  • [2]
  • [3]
  • Rena, F. Manual de Programación para principiantes y avanzados
  • ADA.ppt - Lenguaje de programación concurrente,