Sunteți pe pagina 1din 4

Ada (lenguaje de programacin)

Ada

Desarrollador(es)

Jean Ichbiah y Tucker Taft


[1]

Informacin general

Extensiones .adb, .ads


comunes

Paradigma Orientado a objetos, imperativo

Apareci en 1980

ltima versin Ada 2005 (1 de enero de 2008(9 aos, 8 meses y 20


estable das))

Sistema de tipos Fuerte, esttico, seguro y nominativo

Implementaciones AdaCore GNAT, Green Hills Software

Dialectos SPARK, Perfil de Ravenscar

Influido por ALGOL 68, Pascal, C++(Ada 95), Smalltalk (Ada


95), Java (Ada 2005)

Ha influido a C++, Eiffel, PL/SQL, VHDL, Ruby, Java

Sistema operativo Multiplataforma

[editar datos en Wikidata]


Ada es un lenguaje de programacin orientado a objetos y fuertemente tipado de forma
esttica que fue diseado por Jean Ichbiah de CII Honeywell Bull por encargo
del Departamento de Defensa de los Estados Unidos. Es un lenguaje
multipropsito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad
de Pascal hasta la flexibilidad de C++.
Fue diseado con la seguridad en mente y con una filosofa orientada a la reduccin de
errores comunes y difciles de descubrir. Para ello se basa en un tipado muy fuerte y en
chequeos en tiempo de ejecucin (desactivables en beneficio del rendimiento). La
sincronizacin de tareas se realiza mediante la primitiva rendezvous.
Ada se usa principalmente en entornos en los que se necesita una gran seguridad y
fiabilidad como la defensa, la aeronutica (Boeing o Airbus), la gestin del trfico
areo (como Indra en Espaa) y la industria aeroespacial entre otros.

ndice
[ocultar]

1Historia
2Compiladores
3Caractersticas
4Ejemplos en Ada
5Vase tambin
6Enlaces externos
o 6.1En espaol
o 6.2En ingls

Historia[editar]
El lenguaje fue diseado bajo encargo del Departamento de Defensa de los Estados
Unidos (DoD). Durante los aos 1970, este departamento tena proyectos en una infinidad
de lenguajes y estaba gastando mucho dinero en software. Para solucionarlo se busc un
lenguaje nico que cumpliese unas ciertas normas recogidas en el documento Steelman.
Despus de un estudio de los lenguajes existentes en la poca se decidi que ninguno las
cumpla totalmente, por lo que se hizo un concurso pblico al que se presentaron cuatro
equipos, cuyas propuestas se nombraron con un color: Rojo (Intermetrics), Verde (CII
Honeywell Bull), Azul (SofTEch) y Amarillo (SRI International). Finalmente en mayo
de 1979 se seleccion la propuesta Verde diseada por Jean Ichbiah de CII Honeywell
Bull, y se le dio el nombre de Ada. Esta propuesta era un sucesor de un lenguaje anterior
de este equipo llamado LIS y desarrollado durante los aos 1970.
El nombre se eligi en conmemoracin de lady Augusta Ada Byron (1815-1852) Condesa
de Lovelace, hija del poeta Lord George Byron, a quien se considera la primera
programadora de la Historia, por su colaboracin y relacin con Charles Babbage, creador
de la mquina analtica.
El lenguaje se convirti en un estndar de ANSI en 1983 (ANSI/MIL-STD 1815) y un
estndar ISO en 1987 (ISO-8652:1987).
El DoD y los ministerios equivalentes de varios pases de la OTAN exigan el uso de este
lenguaje en los proyectos que contrataban (el Ada mandate). La obligatoriedad en el caso
de Estados Unidos termin en 1997, cuando el DoD comenz a usar productos COTS
(commercial off the shelf).
Ada ha sido utilizado por la NASA en sistemas VAX.

Wikisource en ingls contiene obras originales de o sobre los requisitos de


Steelman.
Compiladores[editar]
Un compilador de Ada muy usado es GNAT, originalmente desarrollado por la Universidad
de Nueva York bajo patrocinio del DoD. Est basado en la tecnologa 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.
Existen otros compiladores comerciales.

Caractersticas[editar]
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 filosofa de que un programa se escribe una vez, se modifica decenas de
veces y se lee miles de veces (legibilidad es ms importante que rapidez de escritura).
Es indiferente el uso de maysculas y minsculas 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 asignacin 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 slo aplica a atributos predefinidos por el lenguaje, ya que no es el concepto de
atributo tpico de OOP).
Se distingue entre "procedimientos" (subrutinas que no devuelven ningn valor pero
pueden modificar sus parmetros) y "funciones" (subrutinas que devuelven un valor y
no modifican los parmetros). Muchos lenguajes de programacin no hacen esta
distincin. Las funciones de Ada favorecen la seguridad al reducir los posibles efectos
colaterales, pues no pueden tener parmetros in out.

Ejemplos en Ada[editar]
Hola mundo
Un ejemplo comn sobre la sintaxis de los lenguajes de programacin es el "Hola mundo".
En Ada, se realizara as:

with Ada.Text_IO; use Ada.Text_IO;


procedure Hello is
begin
Put_Line ("Hola, mundo!");
end Hello;

Tipos de datos

Integer: un nmero entero.


Float: un nmero decimal.
Character: una letra o smbolo del teclado (tambin puede ser un nmero o varios,
pero no se pueden hacer operaciones entre ellos).
String: consiste en una cadena de caracteres.
Array: un array o vector es una variable que agrupa varios elementos de cualquiera de
los tipos previamente descritos.
Ejemplo de uso de array:
type T_vector is array(1..10) of integer; -- estamos definiendo la variable T_vector como un
tipo de dato que almacenar 10 elementos de tipo entero.
Vector1:T_vector; -- Estamos declarando una variable llamada "Vector1" del tipo
"T_vector" previamente definido.
Para acceder a cada uno de los huecos se accederia de la siguiente manera:
Vector1(4):= 5; --El hueco 4 de la variable Vector1 tiene el valor de 5.

S-ar putea să vă placă și