Hablemos de ADA

Violeta, Chip and Pro discuss Ada, a Department of Defense language from 1977 named after Ada Lovelace. It powers the Patriot and Trident missiles, F-22 fighters, and Eurofighter jets. Ada's strong typing and safety features make it reliable for critical systems, though it remains niche partly due to perception rather than technical limits.
Chapters
¿Qué haces, Violeta? ¿En qué lenguaje programas? Eso no parece Go.
Es Ada. Alguien lo sugirió en comentarios y me pareció curioso.
Ah, Ada. Ese lenguaje glorioso, fantástico y... Vamos, que no lo conocías. Pues no.
¿Ves? Si ni siquiera Pro sabe que existía. Y aparte tiene nombre de mujer, como Julia...
¡No menciones a Julia! ¡No tiene nada que ver!
No estoy muy seguro de hablar de este lenguaje, Violeta. Es otro lenguaje antiguo y sin uso, como Fortran. Y mira lo mal que le fue a ese vídeo.
Que Fortran no está muerto. Bueno, de hecho, en el índice TIOBE de enero de 2025 muestra a Fortran entre los 10 primeros lenguajes.
La gente ha votado, ha elegido lo que yo diga y creo que Ada es un lenguaje sobre el que deberíamos hablar.
¿En serio? ¿Seguro que quieres hablar de Ada y no de Fiber? Ya sabes, el framework web ese que me enseñaste para hacer páginas web con Go.
Sé exactamente qué es Fiber y no, prefiero contar la historia de Ada porque es un lenguaje bellísimo y que todo el que lo aprende se enamora de él.
Suena interesante.
De hecho, si Graydon Hoare hubiese conocido Ada, no habría hecho Rust.
Creo que te viniste muy arriba. ¿Ada igual o mejor que Rust?
¿Crees que no?
Sé que no.
¿Y cómo lo sabes si no conoces el lenguaje?
No hace falta conocerlo, pro. Rust es muy popular, y si alguien que usa Ada se acerca a Rust, habrían escrito artículos comparándolo y diciendo lo típico de: ¡Oh, eso ya lo tenía Ada hace 20 años!
¿En verdad? Sí que se ha comentado alguna que otra vez.
Seguro que si Hada hubiese sido conocido por Greidon, aún así habría hecho rast. El lenguaje Hada no puede ser tan seguro. Es muy antiguo.
Oye, que no es tan antiguo. Violeta, por favor, dile a Chip los inicios del lenguaje Hada.
Tampoco te lo sabes, Por cierto, antes de continuar, si no estás suscrito aprovecha y dale, que luego se te olvida el nombre del canal y pasa lo que pasa.
Chip.
¿Qué?
¿Qué estás haciendo?
¿Nunca te ha pasado?
Los orígenes del lenguaje Ada.
Podemos echar un vistazo a la línea de tiempo que aparece en AdaCore, el grupo de desarrollo de Ada que actualmente mantiene el lenguaje de programación.
¿Todavía se sigue manteniendo?
Todavía se sigue usando en proyectos nuevos. Solo que tienden a ser proyectos grandes y principalmente en empresas o gobiernos donde se conocen las bondades del lenguaje.
Vamos, pocos sitios.
¡No ese es el caso, chip!
Pero son pocos.
Lo importante es que fue un lenguaje solicitado por el Departamento de Defensa de los Estados Unidos.
Parece que estuvieron 3 años escribiendo los requisitos que querían para el lenguaje de programación.
¿Qué son esos nombres? Strawman, Woodenman, Tinman, Ironman, Steelman...
Son los nombres asignados a los documentos. Parece que cuanto más estable se veía el documento, más elevada era la dureza del producto del que estaba hecho.
El hombre de acero terminó hecho todo un Superman, pero seguro que había alguna kriptonita.
Seguramente. No obstante, estos son documentos de requisitos. Ahora tocaba buscar un lenguaje que encajase o el desarrollo de un lenguaje que cumpliese los requisitos.
¿Hubo concurso?
Hubo concurso.
¿Quién desarrollaría a Steel Man?
¿Snyder?
¿Qué?
Era un chiste. Es difícil ser un amante de DC en estos ambientes.
El concurso se llevó a cabo entre agosto de 1977 y marzo de 1979.
Entonces, cuando se desarrolló el concurso fue más bien para desarrollar a Iron Man, ¿no, señor Stark?
¿Qué?
¡Tampoco Marvel! No tenéis cultura.
¡Chip!
¡Céntrate! El concurso se llevó a cabo entre las compañías CEE Honeywell Bull.
¡Qué nombre más largo!
Intermetrics, Softex y SRI.
¿Ves? Esos nombres son más compactos. ¡Ganadores!
A cada empresa se le asignó un color para que representara sus propuestas y así no hubiese tratos de favor.
¿Qué colores eligieron?
Verde, rojo, azul y amarillo respectivamente. En marzo de 1978 pasaron a la final los lenguajes diseñados por la empresa verde y roja.
¡Vaya! Softex y SRI quedaron fuera.
En abril de 1979 se eligió finalmente la empresa verde.
¿Quién lo iba a decir? ¡La empresa con el nombre más largo!
Aunque el patrocinio partió inicialmente del Departamento de Defensa de los Estados Unidos, en 1979 ya había otros países involucrados a través de la OTAN.
C&H Honeywell Bull es donde trabajó John H. Pierre.
Sí, de hecho fue quien hizo el diseño del lenguaje Ada, antes de que se llamara Ada, claro.
¿Cómo se decidió el nombre?
Hubo una reunión en París en mayo de 1979. Durante una tertulia en un café de los Campos Elíseos, el comandante Jack sugirió llamar al lenguaje Ada en honor a Augusta Ada Lovelace.
Bonito detalle.
No sé, el hecho de que tantas organizaciones bélicas estén detrás hace plantearse para qué querían realmente este lenguaje de programación.
Es un lenguaje de programación y no un arma. No deja de ser una herramienta potente con la que desarrollar software avanzado dentro de sistemas que pueden usarse para destruir, pero también como elementos de defensa.
¿Se empleó para diseñar software para guiado de misiles?
Vale, sí, Ada se empleó para el código de los misiles guiados Patriot el Trident.
¿Y para aviones de guerra?
Sí, se empleó en el F-22 Raptor y en el Eurofighter Typhoon.
¿Y submarinos? ¿Y drones?
Sí, y sí.
No obstante, también se habrá empleado para otros sistemas de defensa como radares, comunicaciones o entrenamiento.
Gracias, pro. Sí, por supuesto. Como Ada es un lenguaje en uso por parte de departamentos de defensa de diferentes países, obviamente ha sido utilizado en armamento, pero también hay otras industrias que se han beneficiado del lenguaje y ha tenido otros uso.
¿Qué empresas usan Ada? Obviamente además del Departamento de Defensa de los Estados Unidos.
Pues hay muchas empresas como Boeing, Airbus o la NASA que son las que más emplean este lenguaje en aviónica.
Buenos ejemplos.
No tanto, mira el desastre del Boeing 737 MAX.
Pues curiosamente ese problema de software, además de que tuvo más que ver con el diseño, Su implementación fue realizada en C.
¿Era C y no Ada?
Era C y no Ada. Pero como digo y remarco, el problema no fue el lenguaje sino el diseño y la organización. Hay muchas cosas hechas en C que no fallan tanto.
Vale, perdona Violeta, puedes continuar.
En el sistema de tráfico ferroviario Alstom y en Siemens Mobility emplean Ada.
Toyota firmó un acuerdo en 2013 con AdaCore Para diseñar el software de los componentes de sus automóviles usando Spark, un lenguaje compatible con Ada.
¿AdaCore entonces firma contratos con empresas que utilizan el lenguaje Ada?
Sí, en su página web tienen un listado de sus clientes, así que puedes hacerte una idea de cuántas empresas usan Ada hoy en día y de qué sectores.
Vaya, ¿y dónde está ese listado?
En la descripción, Chip, como siempre. Ah.
¡Cierto! Perdona. Quizá ahora que vamos a ver la descripción sería un buen momento para aprovechar y echar un vistazo también a lo de hacerse miembro, ¿no?
¿Dices para ser historiador o cronista?
¡Exacto! Además ya tenemos un vídeo solo para miembros en el que explicamos algunas cosas.
Bueno, ya me ha picado la curiosidad. Hablemos de qué tiene este lenguaje. ¡Nuevo bloque! ¿Qué características tiene ADA?
Pues de momento depende de qué estándar estemos viendo. ADA 83 fue el primero y tenía un desarrollo basado en tipos fuertes y estático, además de ser modular y concurrente.
Buen comienzo.
ADA 95 implementó la programación orientada a objetos y tiempo real.
Lo primero era de esperar dadas las fechas, pero lo segundo suena interesante, sobre todo teniendo en cuenta que Ada se implementa en entornos embebidos.
Sí, las siguientes versiones de Ada 2005 y Ada 2012 pueden considerarse mejoras a la seguridad mientras que la última, Ada 2022, agrega elementos avanzados de concurrencia y paralelismo.
Ada 2022, pues esto fue no hace mucho. Eso quiere decir que siguen trabajando activamente.
Lo comenté al principio, ¿no?
Sí, aunque no muy en profundidad.
Y ya que estamos, vamos a hacer la pregunta que faltó en el capítulo de Pascal: ¿Cómo puedo utilizar Ada?
¿Hay que pagar para utilizar Ada?
Pues no, y la verdad es que está bien que hagas esa pregunta porque el proyecto de software libre NUT es actualmente el compilador oficial por parte de AdaCore.
Vaya, se ha optado por hacer oficial un compilador de GCC.
¿GCC no es solo para C o C++?
No, bueno, en un inicio se conocía como GNU C Compiler o compilador C de GNU. Pero más tarde cambió a GNU Collection Compilers para dar cabida a otros compiladores como Ada.
¿Y hay un GNAT Studio?
Bueno, hay que matizar. GNAT tiene doble licenciamiento y es tanto software libre en su versión de comunidad como software propietario en su versión Pro.
¿Entonces GNAT Studio es de pago?
Sí y no. Es decir, Si vas a la página de GitHub, que hemos dejado su enlace en la caja de descripción, verás que puedes descargarlo y usarlo en Windows o Linux. Parece que no hay versión para otras plataformas de momento.
Nos quedamos entonces con eso. Conclusiones.
¿Pro? ¿Conclusiones? ¿Ya?
La entrada de año ha sido dura.
Bueno, pues Ada es un lenguaje que ha pasado desapercibido. Es un lenguaje que aún se emplea en muchas empresas Y tiene un nivel de seguridad tal y como recomendaba la Casa Blanca y, a diferencia de Rust, este lenguaje sí es maduro.
Entonces, ¿por qué no se usa mucho más o por qué la Casa Blanca no lo mencionó?
Pues estas preguntas te las dejamos a ti.
¿A mí?
No, a quienes nos ven u oyen.
Ah, pues pregunto: ¿Conocías este lenguaje? ¿Solo de oídas?
¿Lo has usado ya?
Déjanos tus comentarios.
Pro, la entrada del año fue dura.
¿Aún te estás recuperando?
Más o menos. Se acumula el trabajo y hay que hacer más cosas.
¿Te refieres a lo que dijiste sobre enseñar programación?
¿Estás haciendo algo interesante?
Puede ser, puede ser. Continuará.
More from Manuel

Historia de los Lenguajes de Programación: años 1960-1969 #basic #apl #simula #lisp #logo

¿Compilador o intérprete? La historia de una rivalidad que comenzó en los años 40








