Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: krouziciorel 28. 04. 2025, 13:30:40

Název: Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 28. 04. 2025, 13:30:40

Programovací jazyk Ada v České republice


Již mnoho let se zajímám o programovací jazyk Ada. Líbí se mi jeho čitelnost a oblast využití, zatím jsem se však nesetkal s nikým, kdo by jej v naší zemi reálně využíval. Pokud se bavím s některým informatikem, maximálně jej zná, ale s opravdovým praktickým firemním využitím se nikdo z nich nesetkal.

Našel jsem pouze historický dokument (a velmi zajímavý):

http://prog-story.technicalmuseum.cz/images/dokumenty/Ada_200/Ada-1975-2015.pdf

Jedinou blízkou společnost, kde je Ada reálně nasazena, představuje slovenský Ipesoft, o níž píše dnes asi hlavní přispěvovatel do Ady:

https://www.adacore.com/papers/ipesoft-delivering-reliable-long-lived-energy-and-industrial-systems-with-ada-and-adacore
https://www.adacore.com/press/ipesoft

A zajímavý článek od provozovatele:

https://www.ipesoft.com/sk-blog/vyber-programovacieho-jazyka-pre-realtime-systemy

Ada má svůj vývoj od verze 83 až po nejnovější 2022, součástí je také formální verifikační nástroj Spark. Moderní jazyk obsahuje nástoj Alire ála rustí Cargo:

https://alire.ada.dev/

k dispozici je nečekaně mnoho projektů na github, specializovaná fóra i otevřené rámce pro opravdu profi řešení:

https://github.com/lasp/adamant

I když se tedy jazyk stále svým tempem vyvíjí a Adacore nezapomíná ani na dnes tak často skloňovanou umělou inteligenci, využití je omezené (nebo vhodněji řečeno velmi specializované).

Algolské jazyky však v programátorském světě nemají štěstí, což potvrzuje mnoho reakcí diskutérů u článků o tomto jazyce zde na Rootu.


Proto bych se rád touto cestou optal, zda se některý ze čtenářů nesetkal s tímto jazykem ve firemní praxi nebo nezná někoho, kdo ano.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: ogdru6jahad 28. 04. 2025, 13:47:05
a muzes neznalemu popsat, proc se ti libi?

pracuji s fortran, c, c++.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 28. 04. 2025, 14:36:36
a muzes neznalemu popsat, proc se ti libi?

pracuji s fortran, c, c++.

S radostí :). Algolské jazyky mají pro mě čitelnou, řekl bych lidštější syntaxi, ty Céčkové jsou pro mě přeci jen trochu kryptické. Ale to je samozřejmě věc vkusu, někdo holky a jiný vdolky. Na Tiobe v posledních měsících vidím, že se Ada dostává do popředí (i když vypovídací hodnota této informace může být sporná). Zájem o Rust také nelze přehlédnout. A projekty, které jsou vidět právě např. u Adacore nebo nově vznikající Alire balíčky dokazují, že jazyk je živý.

Proto mě zajímá reálné využití v ČR, myslel jsem třeba na jaderné elektrárny, lékařství, finančnictví, obranný sektor nebo letecké, automobilové a železniční systémy. Ne, že bych chtěl fušovat do těchto řemesel, kdo se však nezeptá, nic se nedozví.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: ssdcorrupt 28. 04. 2025, 17:07:02
google po par chvilkach trapeni nasel neco v archivu 2020 cervenec a srpen v tisnove. www.pracetisnov.cz/archiv/ jeste prostejov a olomouc... staci dat ada do uvozovek pri googleni.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: Pavel Stěhule 28. 04. 2025, 21:16:30
Algolské jazyky však v programátorském světě nemají štěstí, což potvrzuje mnoho reakcí diskutérů u článků o tomto jazyce zde na Rootu.


Proto bych se rád touto cestou optal, zda se některý ze čtenářů nesetkal s tímto jazykem ve firemní praxi nebo nezná někoho, kdo ano.

Asi záleží na generaci a škole. U nás (začátek 90 let - ČVUT) byl Pascal dost preferovaný, při výuce, při psaní aplikací. Naopak C nebo C++ měl příchuť punku. Na Matfyzu prý jelo C++. Osobně mám Wirthovy jazyky rád - i když už jsem je nikdy nepoužil - Modula, Oberon nebo Visual Basic (upravená Modula).

Dost lidí stále používá variantu ADY aniž by o tom vědělo. PL/SQL (Oracle) je docela věrná implementace ADY. A v PL/SQL jsou stále napsané milióny řádků procedur běžících v apkách v korporátech. PL/pgSQL (Postgres) je osekaná kopie PL/SQL - takže je to taky trošku ADA.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 28. 04. 2025, 22:51:26
google po par chvilkach trapeni nasel neco v archivu 2020 cervenec a srpen v tisnove. www.pracetisnov.cz/archiv/ jeste prostejov a olomouc... staci dat ada do uvozovek pri googleni.

Moc děkuji za odkazy, alespoň ten Tišnov. zkoušel jsem je zadat do archivu:

https://web.archive.org/

ale jako na potvoru zrovna zde historie chybí, zajímalo by mě, která firma v Tišnově inzeráty podala a zda Adu stále ještě využívají. Každopádně je vidět, že v ČR je Ada velmi okrajovou záležitostí, v cizině je to přeci jen trochu lepší, kromě nabídek, které zpřístupňují fóra zaměřená na tento jazyk existuje pěkný rozcestník:

https://beyond-tabs.com

Situace je taková jaká je a nezbývá, než jí přijmout, nevadí.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 29. 04. 2025, 07:19:09
Citace

Asi záleží na generaci a škole. U nás (začátek 90 let - ČVUT) byl Pascal dost preferovaný, při výuce, při psaní aplikací. Naopak C nebo C++ měl příchuť punku. Na Matfyzu prý jelo C++. Osobně mám Wirthovy jazyky rád - i když už jsem je nikdy nepoužil - Modula, Oberon nebo Visual Basic (upravená Modula).

Dost lidí stále používá variantu ADY aniž by o tom vědělo. PL/SQL (Oracle) je docela věrná implementace ADY. A v PL/SQL jsou stále napsané milióny řádků procedur běžících v apkách v korporátech. PL/pgSQL (Postgres) je osekaná kopie PL/SQL - takže je to taky trošku ADA.

Ano, také jsem začínal na Pascalu a žije dodnes, minimálně pro nás linuxové nadšence ve formě stále udržovaného Free Pascalu/Lazarusu. Kamarád programátor měl na ČVUT k dispozici skripta s popisem distribuovaných algoritmů a prý kvůli čitelnosti byla použita Ada. Souhlasím s PL/SQL, něco jsem o tom četl: 

https://news.ycombinator.com/item?id=28345263

A i Orákulum má pěkný článek:

https://docs.oracle.com/cd/E11882_01/appdev.112/e10827/ch_four.htm#g1011716

Zajímal jsem se o to, proč Ada dopadla tak jak dopadla, reálně působí informace, že dlouho nebyl k dispozici zadarmózní kompilátor narozdíl od C/C++ a pokud školy přestaly Adu vyučovat, situace nemohla dopadnout jinak. Proto je hlavní procento knížek do roku 1995 (Ada 95 Problem Solving Program Design, Ada 95 from the Beginning, Ada 95 The Craft of OOP), z novějších už jen Beginning Ada programming from novice to professional 2020 nebo nesmrtelný Barnes se svojí nejnovější Programming in Ada 2022. Co se dá dělat, takový je vývoj.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: Pavel Stěhule 29. 04. 2025, 08:17:17
Zajímal jsem se o to, proč Ada dopadla tak jak dopadla, reálně působí informace, že dlouho nebyl k dispozici zadarmózní kompilátor narozdíl od C/C++ a pokud školy přestaly Adu vyučovat, situace nemohla dopadnout jinak. Proto je hlavní procento knížek do roku 1995 (Ada 95 Problem Solving Program Design, Ada 95 from the Beginning, Ada 95 The Craft of OOP), z novějších už jen Beginning Ada programming from novice to professional 2020 nebo nesmrtelný Barnes se svojí nejnovější Programming in Ada 2022. Co se dá dělat, takový je vývoj.

Podle mne to zazdila licence, a možná příliš velké ambice, možná načasování. Wirth v 90 letech propagoval dost minimalistické jazyky - např. Oberon. Možná tam svoji roli hrála skutečnost, že v C byly psané Unixy, později Windows byly napsané v C++, a v druhé polovině 90 let přišla Java, které měla moderní knihovny pro práci s TCP - a pro experimenty s internetem byla vhodnější. V 80 letech ještě nebylo tolik výkonu nazbyt, a přeci jen C je tomu assambleru blíž, a je jednoduší v něm psát rychlé aplikace. O tom jestli nějaký programovací jazyk se rozšíří nebo ne rozhoduje dost možná náhoda, třeba i v tom jestli nějaká významná a velká firma podporuje a používá daný jazyk -  a zbytek se opičí. To, co se děje na univerzitách (a co se tam učí) zas až tak velkou váhu nemá (spíš pak některé koncepty se díky tomu dostanou do mainstreamového jazyka). Většina firem, managmentu se dost nerado odchyluje od aktuálního mainstreamu.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 29. 04. 2025, 09:20:36
Citace
Podle mne to zazdila licence, a možná příliš velké ambice, možná načasování. Wirth v 90 letech propagoval dost minimalistické jazyky - např. Oberon. Možná tam svoji roli hrála skutečnost, že v C byly psané Unixy, později Windows byly napsané v C++, a v druhé polovině 90 let přišla Java, které měla moderní knihovny pro práci s TCP - a pro experimenty s internetem byla vhodnější. V 80 letech ještě nebylo tolik výkonu nazbyt, a přeci jen C je tomu assambleru blíž, a je jednoduší v něm psát rychlé aplikace. O tom jestli nějaký programovací jazyk se rozšíří nebo ne rozhoduje dost možná náhoda, třeba i v tom jestli nějaká významná a velká firma podporuje a používá daný jazyk -  a zbytek se opičí. To, co se děje na univerzitách (a co se tam učí) zas až tak velkou váhu nemá (spíš pak některé koncepty se díky tomu dostanou do mainstreamového jazyka). Většina firem, managmentu se dost nerado odchyluje od aktuálního mainstreamu.

Ano, na tom něco bude, je obtížné odhadnout vývoj jazyků, upřímně řečeno, naprosto netuším ani to, co bude zítra. Souhlasím, že hlavní OS jsou psané v C/C++, já se u Ady také neobejdu bez těchto jazyků (např. GTKAda je toho krásným příkladem) a pokusy typu Ironcad + Gloire jsou spíše testovací. Upřímně řečeno dnes je potřeba i ten Python, např. u kompilace různých produktů od Adacore je nezbytný a Ada vývojáři zjistili, že tvořit kritické věci v Adě a ty další v Pythonu není vůbec špatný nápad (GNAV, Adamant).

Já jsem v diskuzi četl vyjádření íté manažera jedné letecké společnosti, který by dle svých slov velmi rád zaměstnal Ada vývojáře, ale protože univerzity žádné nedodávají, lituje, ale společně s vedením se rozhodl využít to, co pracovní trh nabízí, tedy C++. Což samozřejmě chápu, rozhodl bych se nejspíše stejně. Tyto společnosti využívají standardy typu DO-178B nebo C, které jsou k dispozici pro Adu i C++, časem možná i pro Rust, uvidíme. Ale C/C++ jsou použity u tak obrovského množství projektů, že jakákoliv případná změna situace přestavuje spíše desetiletí.

Ada se však drží dřívějších projektů (pařížské metro, ruský letoun Berijev dvoustovka, evropský Eurofighter nebo americké F-15, 16) a zčásti i těch novějších (F-22 by měl mít cca 80 procent Ady). Zajímavý je moderní F-35, kde cituji: "Většina kódu je vyvíjena v C a C++ kvůli rychlejšímu vývoji a širší dostupnosti kompilátorů, zároveň ale obsahuje i bloky Ada 83 děděné z F-22". Překvapilo mě, že F-35ka má časté problémy se SW u více odběratelů, kdo ví, nakonec čert vem jazyk, hlavně aby se nestal nějaký větší problém.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: Michal Molhanec 29. 04. 2025, 10:49:56
Taky třeba Temelín ;)
Viz https://inis.iaea.org/records/gp4yq-5kr57/files/29000366.pdf?download=1 strana 216

Pak si vzpomínám, že nějaká česká firma měla vlastní jazyk vycházející dost z Ady, snad v tom psali nějakej software pro telefonní ústředny, ale to už je hodně mlhavá vzpomínka :)

Za mě šla Ada špatným směrem, snažila se do jazyka nacpat všechny možný konstrukty, na rozdíl od Wirtha, kterej směřoval k minimalismu.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 29. 04. 2025, 12:14:26
Taky třeba Temelín ;)
Viz https://inis.iaea.org/records/gp4yq-5kr57/files/29000366.pdf?download=1 strana 216

Pak si vzpomínám, že nějaká česká firma měla vlastní jazyk vycházející dost z Ady, snad v tom psali nějakej software pro telefonní ústředny, ale to už je hodně mlhavá vzpomínka :)

Za mě šla Ada špatným směrem, snažila se do jazyka nacpat všechny možný konstrukty, na rozdíl od Wirtha, kterej směřoval k minimalismu.

Výborně, moc děkuji za Temelín, tenhle dokument je pro mě novinka. Mají tam toho teda požehnaně, PL/M, C/C++, Fortran i Adu, tady se jedná o nějakou starší podmnožinu Ady 83 Thompson C-SMART pro kritické systémy, kterou jsem do této doby neznal, ale pravděpodobně to samé dělá dnešní Spark.

Ano, Ada se měla stát univerzálním jazykem, ale nepodařilo se, spoustě lidí také může vadit její "přecertifikovanost" představována různými komisemi, ISO standardy, extrémní typová přísnost a celkové pojetí jazyka jako ceremoniální latiny (zde cituji jedno hodnocení od umělé chytrosti ;)).

Každopádně jsem moc rád za všechny tyto informace, kdo ví, kam se další vývoj bude ubírat, každopádně se moc těším.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: Tomáš Crhonek 29. 04. 2025, 13:59:16
Ano, Ada se měla stát univerzálním jazykem, ale nepodařilo se, spoustě lidí také může vadit její "přecertifikovanost" představována různými komisemi, ISO standardy, extrémní typová přísnost a celkové pojetí jazyka jako ceremoniální latiny (zde cituji jedno hodnocení od umělé chytrosti ;)).


Mě to vyhovuje, dá se z toho udělat příjemný todo list a postupně si odškrtávat, co je splněno.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: Pavel Tišnovský 29. 04. 2025, 20:27:42
Já jsem v diskuzi četl vyjádření íté manažera jedné letecké společnosti, který by dle svých slov velmi rád zaměstnal Ada vývojáře, ale protože univerzity žádné nedodávají, lituje, ale společně s vedením se rozhodl využít to, co pracovní trh nabízí, tedy C++.

Některé firmy si dokážou vývojáře vychovat pro svoji platformu. To je (z toho, co znám) například Kx systems nebo Jane Street. Ale jasně, jestli někdo hledá "hotové" lidi, co se první den posadí k notebooku a začnou makat na enterprise systému...to je zajímavá pohádka.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: mikrom 29. 04. 2025, 20:29:24
Zajímal jsem se o to, proč Ada dopadla tak jak dopadla, reálně působí informace, že dlouho nebyl k dispozici zadarmózní kompilátor narozdíl od C/C++ a pokud školy přestaly Adu vyučovat, situace nemohla dopadnout jinak.
Ja si myslim, ze to nebolo kvoli nedostupnosti free-kompilatoru. Napriklad pre COBOL a PL/I neboli vtedy free-kompilatory, ale Fortran a Ada mali free-kompilatory. Ja som ten jazyk v minulosti skusal (v roku 2006) a vtedy som uz pouzival GNAT kompilator s gcc,
Predtym sa vyucoval na skolach hlavne Pascal, ale Ada je ovela zlozitejsi jazyk, podla mna nevhodny na vyuku zakladov programovania. Ten jazyk ani nema nejako vyspecifikovanu domenu pouzitia ako to ma Fortran a COBOL, a je aj ovela zlozitejsi ako tie dva. Skor by som ho prirovnal k PL/I, mal to byt tiez podobne univerzalny jazyk, bol podobne zlozity a preto sa neujal.

Ale inak pekne spomienky na minulost - hned som si aj nainstaloval GNAT kompilator ;-)
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 30. 04. 2025, 09:38:40
Citace
Mě to vyhovuje, dá se z toho udělat příjemný todo list a postupně si odškrtávat, co je splněno.

Ano, to je parádní pohled. Tento jazyk je předvídatelný a vím, co mě v něm čeká, také sakra drží kompatidebilitu, protože projekty zde vytvářené jsou záležitosti na dvacet, třicet, ale i více let. Mě se líbí, že Ada se nám stále více otevírá a i ve dříve nemyslitelných směrech:

https://www.reddit.com/r/ada/comments/1k26x8j/plan_for_next_version_of_international_ada/

A tady jsou k mání nové plánované vlastnosti a možnost vyjádření, už se těším:

https://github.com/Ada-Rapporteur-Group/User-Community-Input/issues/134
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 30. 04. 2025, 09:50:42
Citace
Některé firmy si dokážou vývojáře vychovat pro svoji platformu. To je (z toho, co znám) například Kx systems nebo Jane Street. Ale jasně, jestli někdo hledá "hotové" lidi, co se první den posadí k notebooku a začnou makat na enterprise systému...to je zajímavá pohádka.

Zde nemám vlastní zkušenosti, ale souhlasím, že právě u dlouhodobých Ada projektů je ideální varianta vychovat si své vývojáře, zaučit nového je zde určitě běh na dlouhou trať. Když se podívám na aktuální pracovní nabídky a požadavky zaměstnavatelů, vidím poptávku po velmi zkušených programátorech s odbornými kurzy (DO-178C, ISO/IEC 61 nebo třeba ECSS-P-00, alespoň tyto byly uvedeny v inzerátech) a v obranném sektoru je mnohdy nutná bezpečnostní prověrka. Na druhou stranu zkušený Céčkař nebo Cépluspluskař, který je ochoten se na Adu podívat, to dnes má usnadněné, kromě placených kurzů existují volně dostupné materiály na:

learn.adacore.com

a některé jsou přímo určeny pro přechod na Adu z C++/Javy nebo z Cčka včetně vestavěných systémů. Jak je tomu v reálné praxi, netuším.
Název: Re:Programovací jazyk Ada v České republice
Přispěvatel: krouziciorel 30. 04. 2025, 10:01:57
Citace
Ja si myslim, ze to nebolo kvoli nedostupnosti free-kompilatoru. Napriklad pre COBOL a PL/I neboli vtedy free-kompilatory, ale Fortran a Ada mali free-kompilatory. Ja som ten jazyk v minulosti skusal (v roku 2006) a vtedy som uz pouzival GNAT kompilator s gcc,
Predtym sa vyucoval na skolach hlavne Pascal, ale Ada je ovela zlozitejsi jazyk, podla mna nevhodny na vyuku zakladov programovania. Ten jazyk ani nema nejako vyspecifikovanu domenu pouzitia ako to ma Fortran a COBOL, a je aj ovela zlozitejsi ako tie dva. Skor by som ho prirovnal k PL/I, mal to byt tiez podobne univerzalny jazyk, bol podobne zlozity a preto sa neujal.

Ale inak pekne spomienky na minulost - hned som si aj nainstaloval GNAT kompilator ;-)

Ano, dívám se na wiki, dle jejich informací byl první volně dostupný Ada kompilátor k dispozici už v roce 1995. Četl jsem pár diskuzí a právě tato možnost byla uvedena jako jeden z důvodů, proč se Ada nerozšířila. Může to být pravda a nemusí, zde nevím, faktorů ale bude více a např. na Redditu nebo forum.ada-lang.io jsou k této problematice k dispozici témata. Říká se, že Ada je složitá a pro tvorbu jednoduchého programu se toho musím spoustu naučit, těžko říct, je-li složitější, než Fortran a COBOL, pak na tom něco může být. Univerzální jazyk zatím neexistuje, uvidíme, třeba jím bude časem ta veselá umělá hloupost ;)

Jinak Ada je určitě zajímavá a mě hnedle zaujala parádní čitelnost, i když poněkud ukecanost, instalace není tak pohodlná jako např. u Rustu, každopádně moderní správce projektů Alire jí posouvá do dnešní doby a vypadá to, že na něj přejdou i plně komerční projekty. Ve svém Arch linuxu mám k dispozici spoustu balíčků:

https://wiki.archlinux.org/title/Ada

a v ostatních distribucích stačí nainstalovat Alire se všemi závislostmi (především gnat a gprbuild) a už to premáva. Jsem zvědav na další vývoj, Ada bude ale spíše už jen na velmi specifické využití, na druhou stranu to vypadá, že právě tato oblast a neustálý vývoj jí zaručuje setrvání v tomhle veselém programátorském světě.