Ada (llenguage de programació)
Ada és un llenguage de programació orientat a objectes i fortament tipado de forma estàtica que va ser dissenyat per Jean Ichbiah de CII Honeywell Bull per encàrrec del Departament de Defensa dels Estats Units. És un llenguage multipropósito, orientat a objectes i concurrente, podent aplegar des de la facilitat de Pascal fins a la flexibilitat de C++.
Va ser dissenyat en la seguritat en ment i en una filosofia orientada a la reducció d'errors comuns i difícils de descobrir. Per a això es basa en un tipado molt fort i en chequeos en temps d'eixecució (desactivables en benefici del rendiment). La sincronisació de tasques es realisa per mig de la primitiva rendezvous.
Ada s'usa principalment en entorns en els que es necessita una gran seguritat i fiabilitat, com la defensa, l'aeronàutica (Boeing i Airbus), la gestió del tràfic aéreu (com Indra en Espanya) i l'indústria aeroespacial entre uns atres.
Història
[editar | editar còdic]El llenguage va ser dissenyat baix encàrrec de swerk. Durant els anys 1972-1975, este departament tenia proyectes en una infinitat de llenguages i estava gastant molts diners en software. Per a solucionar-ho es va buscar un llenguage únic que complira unes certes normes arreplegades en el document Steelman. Despuix d'un estudi dels llenguages existents en l'época es va decidir que cap les complia totalment, per lo que es va fer un concurs públic al que es varen presentar quatre equips, les propostes dels quals es varen nomenar en un color: roig (Intermetrics), vert (CII Honeywell Bull), blau (SofTEch)[1] i groc (SRI International). Finalment, en maig de 1979 es va seleccionar la proposta verda dissenyada per Jean Ichbiah de CII Honeywell Bull, i se li va donar el nom de Ada. Esta proposta era un successor d'un llenguage anterior d'este equip cridat LIS i desenrollat durant els anys 1970. El manual de referència preliminar de Ada es va publicar en ACM SIGPLAN Notices en juny de 1979. El manual de referència de Military Standard es va aprovar el 10 de decembre de 1980 (natalici d'Ada Lovelace) i va rebre el número MIL-STD-1815 en honor de l'any de naiximent de Ada Lovelace. En 1981, C. A. R. Hoare va aprofitar el seu Premi Turing per a criticar a Ada per ser massa complex i, per lo tant, poc fiable.[2] pero posteriorment va semblar retractar-se en el pròlec que va escriure per a un llibre de text de Ada.[3]
Ada va atraure molta atenció de la comunitat de programació en el seu conjunt durant els seus primers dies. Els seus patrocinadors i uns atres varen predir que podria convertir-se en un llenguage dominant per a la programació de propòsit general i no solament per al treball relacionat en la defensa. Ichbiah va declarar públicament que dins de dèu anys, solament quedarien dos llenguages de programació: Ada i Lisp.[4] Els primers compiladors de Ada varen lluitar per implementar este llenguage gran i complex, i tant el rendiment en temps de compilació com en temps d'eixecució tendia a ser llent i les ferramentes primitives. Els proveïdors de compiladors varen dedicar la major part dels seus esforços a aprovar el paquet de validació Capacitat de validació del compilador de Ada (ACVC) requerit pel govern, en proves de conformitat de llenguage massives, que es requeria en una atra característica nova de l'esforç de llenguage de Ada.[4] The Jargon File, un diccionari de gerga de pirates informàtics que es va originar entre 1975 i 1983, senyala en una entrada sobre Ada que «és precisament lo que un podria esperar donat eixe tipo de respal per decret; dissenyat pel comité ... difícil per a usar, i en general un desastrós balafiament de mils de millons de dólars... Ada Lovelace... casi en certea palidecería davant l'us que se li ha donat al seu nom últimament; lo més amable que s'ha dit al respecte és que hi ha provablement una bona llengua chicoteta que crida per a eixir de l'interior de la seua enorme massa elefantiana».[5]
El nom es va elegir en commemoració de lady Augusta Ada Byron (1815-1852), comtesa de Lovelace, filla del poeta Lord George Byron i la matemàtica, activista i aristócrata Anne Isabella Noel Byron, considerada la primera programadora de l'Història per la seua colaboració i relació en Charles Babbage, creador de la màquina analítica.
El llenguage es va convertir en un estàndart d'ANSI en 1983 (ANSI/MIL-STD 1815) i un estàndart ISO en 1987 (ISO-8652:1987). Els requisits del llenguage de Steelman eren els que un llenguage de programació d'alt nivell per a propòsits generals deuria complir, creat pel Departament de Defensa dels Estats Units en el programa de Llenguage d'Orde Superior Comuna del Departament de Defensa en 1978. Els antecessors d'este document varen ser cridats, en orde, «Strawman», «Woodenman», «Tinman» i «Ironman».
Els requisits es varen centrar en les necessitats de les aplicacions informàtiques integrades i varen emfatisar la confiabilidad, la capacitat de manteniment i l'eficiència. En particular, varen incloure facilitats de maneig d'excepcions, verificació en temps d'eixecució i computació paralela.
Es va concloure que cap llenguage existent complia en estos criteris en la mida suficient, per lo que es va convocar un concurs per a crear un llenguage que estiguera més prop de complir-los. El disseny que va guanyar este concurs es va convertir en el llenguage de programació Ada.
El llenguage resultant va seguir de prop els requisits de Steelman, encara que no exactament.
La primera implementació validada de Ada va ser el traductor NYU Ada/Ed,[6] certificat l'11 d'abril de 1983. NYU Ada/Ed s'implementa en el llenguage establit d'alt nivell SETL.[7] Vàries empreses comercials varen començar a oferir compiladors Ada i ferramentes de desenroll associades, incloses Alsys, TeleSoft, DDC-I, Advanced Computer Techniques, Tartan Laboratories, Irvine Compiler, TLD Systems i Verdix.[8] Els fabricants d'ordenadors que tenien un negoci important en les indústries de defensa, aeroespacial o relacionades, també oferien compiladors i ferramentes Ada en les seues plataformes; estos varen incloure Concurrent Computer Corporation, Cray Research, Inc., Harris Computer Systems, i Siemens Nixdorf Informationssysteme AG.[8]
En 1991, el Departament de Defensa de EE. UU. va començar a exigir l'us de Ada (el «mandat de Ada») para tot el software,[9] encara que a sovint es varen concedir excepcions a esta regla. El mandat Ada del Departament de Defensa es va eliminar efectivament en 1997, quan el Departament de Defensa va començar a adoptar la tecnologia comercial llista per a usar (COTS). Existien requisits similars en atres països de l'OTAN: es requeria Ada per als sistemes de la OTAN que involucren comando i control i atres funcions, i Ada era l'idioma obligatori o preferit per a aplicacions relacionades en la defensa en països com Suècia, Alemània i Canadà.[10]
A finals de la década de 1980 i principis de la de 1990, els compiladors de Ada havien millorat en rendiment, pero encara hi havia barreres per a explotar completament les habilitats de Ada, inclós un model de tasques que era diferent al que estaven acostumats la majoria dels programadors en temps real.[4]
Per les característiques de soport de seguritat crítica de Ada, ara s'usa no solament per a aplicacions militars, sino també en proyectes comercials a on un error de software pot tindre greus conseqüències, per eixemple, aviónica i control de tràfic aéreu, eixides comercials com l'Ariane 4 i l'Ariane 5, satèlits i atres sistemes espacials, transport ferroviari i banca.[11]
Per eixemple, el sistema de gestió d'informació de l'avió, el software del sistema fly-by-wire en el Boeing 777, va ser escrit en Ada.[12][13] Desenrollat per Honeywell Air Transport Systems en colaboració en consultors de DDC-I, es va convertir possiblement en el més conegut de tots els proyectes de Ada, civils o militars.[12][13] El sistema de tràfic aéreu automatizado canadenc es va escriure en 1 milló de llínees de Ada (reconte de SLOC). Presentava processament distribuït alvançat, una base de senyes Ada distribuïda i un disseny orientat a objectes. Ada també s'utilisa en atres sistemes de tràfic aéreu, per eixemple, el soport de ferramentes de control d'àrea futur provisional de pròxima generació del sistema de control de tràfic aéreu del Regne Unit (iFACTS) està dissenyat i implementat usant SPARK Ada.[14]
També s'utilisa en el sistema de senyalisació de cabina francés de TVM en el sistema ferroviari d'alta velocitat TGV i en els trens suburbans del metro en París, Londres, Hong Kong i Nova York.[11][15]
Estandardisació
[editar | editar còdic]El Ada preliminar es pot trobar en ACM Sigplan Notices Vol 14, No 6, juny de 1979.
Ada es va publicar per primera volta en 1980 com a estàndar ANSI ANSI/MIL-STD 1815. Com esta primera versió contenia molts errors i inconsistencias (vore Resum dels canvis de llenguage de Ada), l'edició revisada es va publicar en 1983 com ANSI/MIL-STD 1815A. Sense més canvis, es va convertir en norma ISO en 1987, ISO 8652:1987. Esta versió del llenguage es coneix comunament com Ada 83, des de la data de la seua adopció per part de ANSI, pero a voltes també li la denomina Ada 87, des de la data de la seua adopció per ISO. Est és el Manual de referència de Ada 83. També hi ha una traducció al francés; DIN ho va traduir a l'alemà com DIN 66268 en 1988.
Ada 95, l'estàndart conjunt ISO/IEC/ANSI ISO/IEC 8652:1995 (vore Ada 95 RM) va ser publicat en febrer de 1995, convertint-ho en el primer llenguage de programació orientat a objectes estàndar ISO. Per a ajudar en la revisió estàndar i la futura acceptació, la Força Aérea dels Estats Units va finançar el desenroll del compilador GNAT. Actualment, el compilador GNAT és part de la GNU Compiler Collection.
S'ha continuat treballant en la millora i actualisació dels continguts tècnics del llenguage Ada. En octubre de 2001 es va publicar un correcció tècnica de Ada 95, ISO/IEC 8652:1995/Corr 1:2001 (vore Ada 95 RM en TC 1), i una esmena important, ISO/IEC 8652:1995/Amd 1:2007 (vore Ada 2005 RM) va ser publicat el 9 de març de 2007, comunament conegut com Ada 2005 perque el treball en el nou estàndart va finalisar eixe any.
En la conferència Ada-Europa 2012 en Estocolm, Ada Resource Association (ARA) i Ada-Europa varen anunciar la finalisació del disseny de l'última versió del llenguage Ada i la presentació del manual de referència al ISO/IEC JTC 1/SC 22/WG 9 de l'Organisació Internacional de Normalisació (ISO) i la Comissió Electrotécnica Internacional (IEC) per a la seua aprovació. ISO/IEC 8652:2012 (vore Ada 2012 RM) va ser publicat en decembre de 2012, conegut com Ada 2012. Es va publicar un corrigendum tècnic ISO/IEC 8652:2012/COR 1:2016 (vore RM 2012 en TC 1).
A pesar dels noms Ada 83, 95, etc., llegalment solament existix un estàndart Ada, el de l'últim estàndart ISO/IEC: en l'acceptació d'una nova versió de l'estàndart, l'anterior es retira. Els atres noms són solament informals que fan referència a una determinada edició.
Atres estàndarts relacionats inclouen ISO/IEC 8651-3:1988 Sistemes de processament d'informació—Gràfics per ordenador—Enllaces de llenguage del Sistema de Kernel Gràfic (GKS)—Partix 3: Ada.
Vore també
[editar | editar còdic]Referències
[editar | editar còdic]- ↑ «John Goodenough &#; SEI Staff Profile». Sei.cmu.edu.
- ↑ C.A.R., Hoare. “The Emperor's Old Clothes”. Communications of the ACM 24 (2): 75–83. Association for Computing Machinery. doi:.
- ↑ Ada: Language and Methodology, Prentice-Hall.
- ↑ 4,0 4,1 4,2 Rosen, J-P.. “The Ada Paradox(és)”. Ada Letters 24 (2): 28–35. ACM SIGAda. doi:.
- ↑ «THIS IS THE JARGON FILE, VERSION 2.6.2» (TXT). Consultat el 2023-01-31.
- ↑ SofTech Inc.. «Ada Compiler Validation Summary Report: NYU Ada/ED, Version 19.7 V-001».
- ↑ “The NYU Ada Translator and Interpreter” . ACM SIGPLAN Notices – Proceedings of the ACM-SIGPLAN Symposium on the Ada Programming Language 15 (11): 194–201. doi:.
- ↑ 8,0 8,1 Ada Validated Compilers List, Ada Information Clearinghouse, pp. 1–36.
- ↑ Ada Information Clearinghouse. «The Congressional Ada Mandate».
- ↑ Babiak, Nicholas J.. Ada, the New DoD Weapon System Computer Language – Panacea or Calamity, Air University (United States Air Force), pp. 39–40.
- ↑ 11,0 11,1 Feldman, Michael. «Who's using Ada?». SIGAda Education Working Group.
- ↑ 12,0 12,1 Rehmer, Karl (2009). «The HADS Team», Beautiful Teams: Inspiring and Cautionary Tals from Veteran Team Leaders, Sebastopol, Califòrnia: O'Reilly, pp. 299–312.
- ↑ 13,0 13,1 Wolfe, Alexander. “There's Still Some Life Left in Ada”. ACM Queue 2 (7): 28–31. doi:.
- ↑ AdaCore. «GNAT Pro Chosen for UK's Next Generation ATC System».
- ↑ AdaCore. «Look Who's Using Ada».
Referències
[editar | editar còdic]
- Este artícul conté una traducció derivada de «Ada (lenguaje de programación)» de Wikipedia en castellà publicada baix la Llicència de documentació lliure de GNU i la Llicència Creative Commons Reconeiximent-CompartirIgual 4.0 Internacional.