fbpx
Wikipedia

Ada (lenguaje de programación)

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

Ada
Desarrollador(es)
Jean Ichbiah y Tucker Taft
https://www.adaic.org
Información general
Extensiones comunes .adb, .ads
Paradigma Orientado a objetos, imperativo
Apareció en 1980
Diseñado por Jean Ichbiah y S. Tucker Taft
Última versión estable Ada 2012 (1 de febrero de 2016 (6 años, 8 meses y 22 días))
Sistema de tipos Fuerte, estático, 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

Fue diseñado con la seguridad en mente y con una filosofía orientada a la reducción de errores comunes y difíciles de descubrir. Para ello se basa en un tipado muy fuerte y en chequeos en tiempo de ejecución (desactivables en beneficio del rendimiento). La sincronización 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 aeronáutica (Boeing y Airbus), la gestión del tráfico aéreo (como Indra en España) y la industria aeroespacial entre otros.

Historia

El lenguaje fue diseñado bajo encargo del Departamento de Defensa de los Estados Unidos (DoD). Durante los años 1970, este departamento tenía 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. Después de un estudio de los lenguajes existentes en la época se decidió que ninguno las cumplía totalmente, por lo que se hizo un concurso público 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 diseñada 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 años 1970.

El nombre se eligió en conmemoración de lady Augusta Ada Byron (1815-1852), condesa de Lovelace, hija del poeta Lord George Byron y la matemática, activista y aristócrata Anne Isabella Noel Byron, considerada la primera programadora de la Historia por su colaboración y relación con Charles Babbage, creador de la máquina analítica.

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). Los requisitos del lenguaje de Steelman eran los que un lenguaje de programación de alto nivel para propósitos generales debería cumplir, creado por el Departamento de Defensa de los Estados Unidos en el programa de Lenguaje de Orden Superior Común del Departamento de Defensa en 1978. Los antecesores de este documento fueron llamados, en orden, "Strawman", "Woodenman", "Tinman" y "Ironman".

Los requisitos se centraron en las necesidades de las aplicaciones informáticas integradas y enfatizaron la confiabilidad, la capacidad de mantenimiento y la eficiencia. En particular, incluyeron facilidades de manejo de excepciones, verificación en tiempo de ejecución y computación paralela.

Se concluyó que ningún lenguaje existente cumplía con estos criterios en la medida suficiente, por lo que se convocó un concurso para crear un lenguaje que estuviera más cerca de cumplirlos. El diseño que ganó este concurso se convirtió en el lenguaje de programación Ada.

El lenguaje resultante siguió de cerca los requisitos de Steelman, aunque no exactamente.

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.

Existen otros compiladores comerciales.

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 afecta 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.

Ejemplos en Ada

Hola, mundo

Un ejemplo común sobre la sintaxis de los lenguajes de programación es el "Hola mundo". En Ada, se realizaría así:

with Ada.Text_IO; use Ada.Text_IO; procedure Hello is begin Put_Line ("¡Hola, mundo!"); end Hello; 
Tipos de datos
  • Integer: un número entero.
  • Float: un número decimal.
  • Character: una letra o símbolo del teclado (también puede ser un número 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 accedería de la siguiente manera:

Vector1(4):= 5; --El hueco 4 de la variable Vector1 tiene el valor de 5.

Véase también

Enlaces externos

En español

  •   Wikilibros alberga un libro o manual sobre Programación en Ada.
  • Curso básico de Ada 95 en ulpgc.es
  • Asociación Ada-Spain
  • Directorio de páginas sobre Ada
  • Compilar Ada en Mac OS X

En inglés

  • Ada Information Clearing House
  • Asociación Ada-Europe
  • Directorio de páginas sobre Ada
  •   Datos: Q154755
  •   Multimedia: Ada (programming language) / Q154755
  •   Libros y manuales: Programación en Ada

lenguaje, programación, lenguaje, programación, orientado, objetos, fuertemente, tipado, forma, estática, diseñado, jean, ichbiah, honeywell, bull, encargo, departamento, defensa, estados, unidos, lenguaje, multipropósito, orientado, objetos, concurrente, pudi. Ada es un lenguaje de programacion orientado a objetos y fuertemente tipado de forma estatica que fue disenado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa de los Estados Unidos Es un lenguaje multiproposito orientado a objetos y concurrente pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C AdaDesarrollador es Jean Ichbiah y Tucker Tafthttps www adaic orgInformacion generalExtensiones comunes adb adsParadigmaOrientado a objetos imperativoAparecio en1980Disenado porJean Ichbiah y S Tucker TaftUltima version estableAda 2012 1 de febrero de 2016 6 anos 8 meses y 22 dias Sistema de tiposFuerte estatico seguro y nominativoImplementacionesAdaCore GNAT Green Hills SoftwareDialectosSPARK Perfil de RavenscarInfluido porALGOL 68 Pascal C Ada 95 Smalltalk Ada 95 Java Ada 2005 Ha influido aC Eiffel PL SQL VHDL Ruby JavaSistema operativoMultiplataforma editar datos en Wikidata Fue disenado con la seguridad en mente y con una filosofia orientada a la reduccion de errores comunes y dificiles de descubrir Para ello se basa en un tipado muy fuerte y en chequeos en tiempo de ejecucion desactivables en beneficio del rendimiento La sincronizacion 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 aeronautica Boeing y Airbus la gestion del trafico aereo como Indra en Espana y la industria aeroespacial entre otros Indice 1 Historia 2 Compiladores 3 Caracteristicas 4 Ejemplos en Ada 5 Vease tambien 6 Enlaces externos 6 1 En espanol 6 2 En inglesHistoria EditarEl lenguaje fue disenado bajo encargo del Departamento de Defensa de los Estados Unidos DoD Durante los anos 1970 este departamento tenia proyectos en una infinidad de lenguajes y estaba gastando mucho dinero en software Para solucionarlo se busco un lenguaje unico que cumpliese unas ciertas normas recogidas en el documento Steelman Despues de un estudio de los lenguajes existentes en la epoca se decidio que ninguno las cumplia totalmente por lo que se hizo un concurso publico 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 selecciono la propuesta verde disenada 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 anos 1970 El nombre se eligio en conmemoracion de lady Augusta Ada Byron 1815 1852 condesa de Lovelace hija del poeta Lord George Byron y la matematica activista y aristocrata Anne Isabella Noel Byron considerada la primera programadora de la Historia por su colaboracion y relacion con Charles Babbage creador de la maquina analitica El lenguaje se convirtio en un estandar de ANSI en 1983 ANSI MIL STD 1815 y un estandar ISO en 1987 ISO 8652 1987 Los requisitos del lenguaje de Steelman eran los que un lenguaje de programacion de alto nivel para propositos generales deberia cumplir creado por el Departamento de Defensa de los Estados Unidos en el programa de Lenguaje de Orden Superior Comun del Departamento de Defensa en 1978 Los antecesores de este documento fueron llamados en orden Strawman Woodenman Tinman y Ironman Los requisitos se centraron en las necesidades de las aplicaciones informaticas integradas y enfatizaron la confiabilidad la capacidad de mantenimiento y la eficiencia En particular incluyeron facilidades de manejo de excepciones verificacion en tiempo de ejecucion y computacion paralela Se concluyo que ningun lenguaje existente cumplia con estos criterios en la medida suficiente por lo que se convoco un concurso para crear un lenguaje que estuviera mas cerca de cumplirlos El diseno que gano este concurso se convirtio en el lenguaje de programacion Ada El lenguaje resultante siguio de cerca los requisitos de Steelman aunque no exactamente Compiladores EditarUn compilador de Ada muy usado es GNAT originalmente desarrollado por la Universidad de Nueva York bajo patrocinio del DoD Esta basado en la tecnologia de GCC y es software libre Actualmente esta mantenido por AdaCore antes llamada Ada Core Technologies empresa que ofrece soporte y servicios sobre el compilador Existen otros compiladores comerciales Caracteristicas EditarLa 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 filosofia de que un programa se escribe una vez se modifica decenas de veces y se lee miles de veces legibilidad es mas importante que rapidez de escritura Es indiferente el uso de mayusculas y minusculas en los identificadores y palabras claves es decir es un lenguaje case insensitive En Ada todo el programa es un unico procedimiento que puede contener subprogramas procedimientos o funciones Cada sentencia se cierra con end que 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 asignacion 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 solo afecta a atributos predefinidos por el lenguaje ya que no es el concepto de atributo tipico de OOP Se distingue entre procedimientos subrutinas que no devuelven ningun valor pero pueden modificar sus parametros y funciones subrutinas que devuelven un valor y no modifican los parametros Muchos lenguajes de programacion no hacen esta distincion Las funciones de Ada favorecen la seguridad al reducir los posibles efectos colaterales pues no pueden tener parametros in out Ejemplos en Ada EditarHola mundoUn ejemplo comun sobre la sintaxis de los lenguajes de programacion es el Hola mundo En Ada se realizaria asi with Ada Text IO use Ada Text IO procedure Hello is begin Put Line Hola mundo end Hello Tipos de datosInteger un numero entero Float un numero decimal Character una letra o simbolo del teclado tambien puede ser un numero 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 almacenara 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 Vease tambien EditarLenguaje de programacion SPARK Perfil de RavenscarALGOL 68 Pascal Smalltalk ADA moneda digitalEnlaces externos EditarEn espanol Editar Wikilibros alberga un libro o manual sobre Programacion en Ada Curso basico de Ada 95 en ulpgc es Asociacion Ada Spain Directorio de paginas sobre Ada canalada org Foro sobre Ada Compilar Ada en Mac OS X Mexico UTMEn ingles Editar Ada Information Clearing House Ada Power Asociacion Ada Europe Directorio de paginas sobre Ada Datos Q154755 Multimedia Ada programming language Q154755 Libros y manuales Programacion en Ada Obtenido de https es wikipedia org w index php title Ada lenguaje de programacion amp oldid 143572813, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos