Ada (ohjelmointikieli)

Ada
Paradigma proseduraalinen, olio-ohjelmointi (Ada 95)
Tyypitys vahva, staattinen
Yleinen suoritusmalli käännettävä
Julkaistu 1983
Vakaa versio Ada 2012 (ISO/IEC 8652:2012/Cor 1:2016) (2016)
Merkittävimmät toteutukset GNAT
Vaikuttanut C++, VHDL
Murteet Ada 83, Ada 95, Ada 2005, SPARK
Käyttöjärjestelmä alustariippumaton
Verkkosivu https://www.adaic.org/
Uutisryhmä comp.lang.ada

Ada on ohjelmointikieli, jonka kehitystyön Yhdysvaltain puolustusministeriö aloitti vuonna 1974. Puolustusministeriö rahoitti uuden ohjelmointikielen kehitystyön, minkä seurauksena Ada-kieli standardoitiin vuonna 1983 (MIL-STD-1815). Alkuperäisestä Ada-kielestä käytetään nykyisin nimeä Ada 83. Ada 83:n määrittely muutettiin ISO-standardiksi ISO 8652 vuonna 1987. Ada on nimetty Ada Lovelacen mukaan, jota pidetään ensimmäisenä tietokoneohjelmoijana.

Päivitetyn kieliversion kehitystyö alkoi vuonna 1988, ja ensimmäinen versio uuden kielen vaatimuksiksi julkaistiin vuonna 1990. Lopullinen versio uudesta standardista julkaistiin helmikuussa 1995, joten nykyisin käytössä olevasta kielen versiosta käytetään nimitystä Ada 95. Ada 95 on ensimmäinen ISO-standardoitu oliokieli. Se on määritetty ISO-standardissa ISO/IEC 8652:1995(E). Useista muista ohjelmointikielistä poiketen Ada-kielen standardi on saatavilla ilmaiseksi. Ada 2005-kieleen on lisätty mm. Java-kielestä tutut rajapintaluokat sekä geneeriset säiliöluokat.

Adan standardi ISO/IEC 8652:2012 julkaistiin joulukuussa 2012[1] ja sen korjattu versio ISO/IEC 8652:2012/Cor 1:2016 on julkaistu vuonna 2016.[2]

Adan pohjalta on kehitetty nykyään digitaalisuunnittelussa laajassa käytössä oleva laitteistokuvauskieli VHDL.

Ada 95:n ominaisuudet

Yksi tärkeimmistä Ada 95:n suunnitteluperiaatteista oli ylläpidettävyys. Kielen syntaksi on suunniteltu helppolukuiseksi ja selkeäksi, koska varsinkin suurten ohjelmistojen kohdalla lähdekoodia luetaan huomattavasti useammin kuin kirjoitetaan.

Ada 95:een lisättiin olio-ohjelmointi, jonka ansiosta Ada-ohjelmoinnin konsepti muuttui samankaltaiseksi kuten C++. Tosin osa olio-ohjelmoinnin ominaisuuksista ovat olleet osa Adaa jo ensimmäisistä versioista asti. Vasta Ada 95 virallisesti antoi tuen olio-ohjelmoinnille. Esimerkiksi yksi Adan ominaisuuksista on kielen mahdollisuus käyttää "alatyyppejä" (engl. subtypes) jo hyvin ensimmäisissä versioissa, missä koodilla on yksi peruste "supertyyppi" (engl. supertype), ja uusia ominaisuuksia voidaan määritellä alatyypeissä ilman että tarvitsisi määritellä uutta supertyyppiä[3] Tätä konseptia laajennettiin kun Ada 95-versio julkaistiin. Toisin sanoen, Ada oli varsin edistynyt ohjelmointi kieli verrattuna muihin kieliin samoilla vuosikymmenillä.

Koska Adan aiempien versioiden ominaisuudet olivat tarpeeksi lähellä olio-ohjelmoinnin perusteita, Ada 95:n muutos oli lähinnä vain "merkittyjen tyyppien" (engl. tagged type) lisäys. Ennen, kaikki ohjelman alatyypit ja ominaisuudet piti olla yhden menettelyn (engl. procedure) sisällä jotta supertyyppi pystyi käyttämään niitä, mutta uuden merkittyjen tyyppien järjestelmä antaa ohjelmalle mahdollisuuden käyttää menettelyjä jotka ovat merkityn tyypin ulkopuolella, samalla tavalla kuten Javassa pystytään käyttämään erillisiä methodeja. Yksi toinen tärkeä lisäys oli kokonaisen luokan kokoisia tyyppejä (engl: Classwide type). Tällä tavalla menetelmät jotka ovat yhden luokan sisällä on aina merkattu sen luokan tyypiksi, eikä niitä tarvitse yksitellen määritellä olevan osa luokkaa. Tämä oli se viimeinen lisäys mitä Ada tarvitsi täyteen olio-ohjelmointi käyttöön.[4]

Muita Ada 95:n peruskieleen sisältyviä ominaisuuksia:

  • vahva tyypitys
  • keskeytysten käsittely
  • kielessä määritelty tuki rinnakkaisuudelle
  • geneeriset tyypit
  • helppo liitettävyys C-, Cobol- ja Fortran-koodiin
  • tuki laitteistoläheiselle ohjelmoinnille

Ada-kieltä käytetään pääasiallisesti ilmailuun, avaruuteen tai lääkinnällisiin laitteisiin tarkoitetuissa ohjelmistoissa, joissa suuri luotettavuus on ehdottoman tärkeää.

Esimerkkiohjelma

Yleinen esimerkki ohjelmointikielen syntaksista on Hello World -ohjelma:

 with Ada.Text_IO; use Ada.Text_IO;
 procedure Hello_World is
 begin
     Put_Line("Hello World!");
 end Hello_World;

Ohjelman alun with-lauseella kerrotaan kääntäjälle Hello_Worldin käyttävän Ada.Text_IO-pakkausta (package). Pakkauksessa määritellyt proseduurit ja funktiot tuodaan näkyviin use-lauseella. Varsinaisen Hello_World-ohjelman runko on avainsanojen begin ja end välissä.

Ada ei ota kantaa avainsanojen eikä tunnisteiden kirjainkokoon.

Standardeja

  • ISO/IEC 8652: Information technology—Programming languages—Ada
  • ISO/IEC 15291: Information technology—Programming languages—Ada Semantic Interface Specification
  • ISO/IEC 18009: Information technology—Programming languages—Ada: Conformity assessment of a language processor
  • IEEE Standard 1003.5b-1996, POSIX-Ada liitos

Lähteet

  1. Ada 2012 Language Standard Approved by ISO Ada Resource Association. (englanniksi)
  2. ISO/IEC 8652:2012/COR 1:2016 ISO. Viitattu 30.8.2019. (englanniksi)
  3. What Is Subtyping? - Definition from Techopedia Techopedia.com. Viitattu 21.2.2023. (englanniksi)
  4. “learn.adacore.com" learn.adacore.com. Viitattu 21.2.2023. (englanniksi)

Aiheesta muualla

Read other articles:

«Despechá» Sencillo de Rosalíadel álbum Motomami+Publicación 28 de julio de 2022Formato Descarga digital streamingGrabación Febrero de 2022Género(s) MamboDuración 2:37Discográfica Columbia RecordsSony MusicAutor(es) Rosalía Vila Tobella Carlos Ortíz David Rodríguez Dylan Patrice Juan Rivera Nino Segarra Noah GoldsteinProductor(es) Rosalía Vila Tobella Chris Jedi Gaby Music Noah Goldstein Sir DylanCronología de sencillos de Rosalía «Candy» (2022) «Despechá» (2022) «El pa�...

Esta página cita fontes, mas que não cobrem todo o conteúdo. Ajude a inserir referências. Conteúdo não verificável pode ser removido.—Encontre fontes: ABW  • CAPES  • Google (N • L • A) (Maio de 2013) As referências deste artigo necessitam de formatação. Por favor, utilize fontes apropriadas contendo título, autor e data para que o verbete permaneça verificável. (Maio de 2013)Este artigo carece de reciclagem de acord...

Солоніцин Анатолій ОлексійовичІм'я при народженні рос. Отто Алексеевич СолоницынНародився 30 серпня 1934(1934-08-30)[1][2]БогородськПомер 11 червня 1982(1982-06-11)[1][2] (47 років)Москва, СРСРрак легеньПоховання Ваганьковське кладовищеГромадянство  СРСРДіяльність актор

Кібуц Сде-Бокерשְׂדֵה בּוֹקֵר Координати 30°52′08″ пн. ш. 34°47′33″ сх. д.H G O Країна ІзраїльІзраїльОкруг ПівденнийРегіональна рада Рамат-НегевДата заснування 15 травня 1952Населення 426 осіб (2014)Часовий пояс UTC+2GeoNames 293628OSM r91941218  ·RОфіційний сайт sde-boker.org.il Сде-Бо�...

Dimick B. Huntington Dimick Baker Huntington (May 26, 1808 – February 1, 1879) was a leading Indian interpreter in early Utah Territory. He commissioned a 22-foot-long missionary panorama of C. C. A. Christensen to use in his presentations of the gospel to the Native Americans in 1871.[1] [2] That missionary panorama is housed in the Church History Museum of the Church of Jesus Christ of Latter-day Saints. Biography Huntington was the son of William and Zina Baker Huntington...

Asociación Latinoamericana de Integración Bandera Situación de Asociación Latinoamericana de Integración   Sede Montevideo Ciudad más poblada Brasil Brasil São Paulo Idiomas oficiales español y portugués Tipo Organismo regional Secretario general Sergio Abreu[1]​ Fundación 12 de agosto de 1980 Superficie • Total 19 521 870 km² Población • Total • Densidad 515.722.72614,6 hab/km2 Gentilicio Latinoamericano/a Sitio web http:...

Центральний госпіталь Міністерства внутрішніх справ України Тип Лікувально-реабілітаційний медичний закладГоловний лікар Начальник центру Коробка Василь Іванович[1]Країна  УкраїнаАдреса вул. Бердичівська, 1, м. Київ, 04116.Координати 50°27′32″ пн. ш. 30°28′46″ �...

Tháp ExecutiveThông tin chungTình trạngHoàn thànhDạng10 khu dân cư 1 khu thương mại 1 khách sạnĐịa điểmDubai, Các Tiểu vương quốc Ả Rập Thống nhấtTọa độ25°11′26,94″B 55°15′56,86″Đ / 25,18333°B 55,25°Đ / 25.18333; 55.25000Xây dựngKhởi công2007Khánh thành2010Mở cửa2010Số tầng45Thiết kếKiến trúc sưWS Atkins & các cộng sự Tháp Executive là một phức hợp gồm 12 tòa tháp tro...

Ferrocarril Arica-La PazLugarUbicación Arica y Parinacota La PazDescripciónTipo Ramal ferroviarioInauguración 13 de mayo de 1913Inicio AricaFin La PazCaracterísticas técnicasLongitud 440 kmAncho de vía 1000 mmExplotaciónEstado SemioperativoOperador EFE Arica (Chile)FCA (Bolivia)Mapa Mapa del ferrocarrilEsquema ¿? Ver lista Ferrocarril Arica-La Paz Leyenda Arica Chinchorro Maestranza Chinchorro Río Lluta Río Lluta Rosario Poconchile Río Lluta San Martín Central Pampa Ossa Puq...

Dutch teacher and resistance worker Henriëtte Henriquez PimentelBorn17 April 1876Amsterdam, the NetherlandsDied17 September 1943NationalityDutchOccupation(s)Resistance fighter, teacher, nurseParentsNathan Henriquez Pimentel (father)Rachel Oppenheimer (mother) Henriëtte Henriquez Pimentel (17 April 1876 – 17 September 1943) was a Dutch teacher and trained nurse who during the Second World War headed a crèche in Amsterdam which cared for small children while their parents were otherwise oc...

American football player (born 1988) American football player Geno AtkinsAtkins with the Bengals in 2015No. 97Position:Defensive tacklePersonal informationBorn: (1988-03-28) March 28, 1988 (age 35)Pembroke Pines, Florida, U.S.Height:6 ft 1 in (1.85 m)Weight:300 lb (136 kg)Career informationHigh school:St. Thomas Aquinas(Fort Lauderdale, Florida)College:Georgia (2006–2009)NFL Draft:2010 / Round: 4 / Pick: 120Career history Cincinnati Bengals ...

Pour les articles homonymes, voir Opéra. La liste ci-après présente les salles d'opéra dans le monde, qu'il s'agisse d'édifices dédiés spécifiquement à l'art lyrique ou de théâtres partageant leur scène entre l'opéra et d'autres arts du spectacle. Afrique du Sud Joburg Theatre (en), Johannesbourg, 1080 places Artscape Theatre Centre (en), Le Cap, 1480 places Allemagne Baden-Baden: Le palais des festivals de Baden-Baden (la plus grande salle d'opéra d'Allemagne) Bayreut...

1965 soundtrack album by Vince GuaraldiA Charlie Brown ChristmasOriginal 1965 vinyl releaseSoundtrack album by Vince GuaraldiReleasedDecember 1965Recorded October 26, 1964 (Linus and Lucy)[1] September 17 – October 28, 1965[2][3] StudioFantasy Recording Studios, San Francisco, CaliforniaGenreChristmasjazzsoundtrack[4]Length34:53LabelFantasyVince Guaraldi chronology At Grace Cathedral(1965) A Charlie Brown Christmas(1965) Live at El Matador(1966) Singl...

Magic Hour single de TXTPublicación 15 de enero de 2020Género(s) J-PopFormato CD, descarga digitalDiscográfica Republic Records, Universal Music Japan Cronología de TXT The Dream Chapter: Magic (2019) Magic Hour (2020) The Dream Chapter: Eternity (2020) Cronología de TXT en Japón - Magic Hour(2020) Drama(2020) Sencillos de Magic Hour «Run Away» (Versión en japonés)Publicado: 15 de enero de 2020 [editar datos en Wikidata] Magic Hour es el sencillo debut en Japón del grupo ...

2015 studio album by Gama BombUntouchable GloryStudio album by Gama BombReleased30 October 2015GenreThrash metalLength31:34LabelAFMProducerScott AtkinsGama Bomb chronology The Terror Tapes(2013) Untouchable Glory(2015) Untouchable Glory is the fifth studio album by Irish thrash metal band Gama Bomb. It was released internationally on 30 October 2015 via AFM Records.[1] Recording and release Untouchable Glory was recorded in Dublin and Omeath, Ireland & Suffolk, England ove...

This article does not cite any sources. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Arona railway station – news · newspapers · books · scholar · JSTOR (July 2013) (Learn how and when to remove this template message) AronaGeneral informationLocationLargo Duca d'Aosta 1, AronaArona, Novara, PiedmontItalyCoordinates45°45′19″N 08°33′34″E / ࿯...

Viceroy of Sicily from 1622 to 1624 For other uses, see Emmanuel Philibert of Savoy (disambiguation). This article relies largely or entirely on a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.Find sources: Emmanuel Philibert of Savoy 1588–1624 – news · newspapers · books · scholar · JSTOR (November 2012) Emmanuel Philibert, painted by Anthony van...

Software company JW PlayerTypePrivateFounded2005; 18 years ago (2005)FounderJeroen WijeringHeadquartersNew York City, New YorkWebsitejwplayer.com JW Player is a New York based company that has developed a video player software of the same name.[1] The player, for embedding videos onto web pages, is used by news, video hosting companies, and for self-hosted web videos. The company has also created the video management software JW Platform, formerly known as Bits On Th...

Guatemala nos Jogos Olímpicos de Verão de 2012 Comitê Olímpico Nacional Código do COI GUA Nome Comité Olímpico Guatemalteco «site oficial» (em espanhol)  Jogos Olímpicos de Verão de 2012 Sede Londres, Reino Unido Competidores 19 em 11 esportes Porta-bandeira Juan Ignacio Maegli Medalhas Pos.69º 0 1 0 1 Participações nos Jogos Olímpicos Verão 1952 • 1956–1964 • 1968 • 1972 • 1976 • 1980 • 1984 • 1988 • 1992 • 1996 • 2000 • 2004 • 2008 �...

Government of the Isle of Man Politics of the Isle of Man Lord of Mann Charles III Lieutenant governor John Lorimer Deputy governor Andrew Corlett Isle of Man Government Council of Ministers Chief minister Alfred Cannan Departments Statutory Boards Offices Other Agencies Tynwald Act of Tynwald List President of Tynwald Laurence Skelly Legislative Council President President of Tynwald ex officio House of Keys Speaker Juan Watterson Members (MHKs) Officials of state Judiciary Local government ...