Minule byl clanek, ze spousta starsich programu pouziva Fortran a ze se spousteji na superpocitacich. A ze je soutez pro americke obcany, kdo prepise programy pro letecky prumysl z fortranu do jazyka superpocitacu (proudeni vzduchu kolem objektu, nejspis kridel letadla). Moderni super PC pouzivaji GPU.
Tak, to je asi duvod, proc nvidia dela podporu Fortranu.
Fortran je na tyto věci perfektní. Cca před 10 lety jsem se podílel na jednom vědeckém projektu, v jehož rámci se mimo jiné přepisovaly starší knihovny a kód z Fortranu do C++. Dodnes si pamatuju na jeden meeting ve Francii, kde ti dva přepisovači prezentovali výsledky své práce, vysvětlovali, proč to ještě není, jaké s tím mají potíže, že ten kód už nebude tak rychlý, protože C++ tohle neumí tak dobře zoptimalizovat, že to dá víc práce, protože v tom Fortranu se tyhle věci psaly mnohem přímočařeji a pohodlněji, a že tím přepisem se do toho kódu zanesly zase nové bugy a pár let potrvá, než se zase vychytají... A pak nastala scénka jak z Šimka a Grossmana, kdy se přihlásil jeden postarší profesor s otázkou "tak proč se to, k sakru, teda vlastně přepisuje?" Nastalo trapné ticho. Oba se tvářili, jak kdyby tu otázku vůbec nechápali, jak se vůbec někdo může tak "blbě" ptát a když se vzpamatovali z "podpásového" výpadu proti nim, začali tam blekotat stále dokola cosi o tom, že ten Fortran je zastaralý jazyk a jak je to C++ super věc. Po druhém pokusu starý pán poznal, že je to marné, a nechápavě kroutě hlavou si zamumlal pod vousy jen cosi o tom, že naštěstí jde za rok do důchodu.
A přitom stačilo říct, že průměrný věk programátora ve Fortranu je cca 124 let, zatímco u programátora v C++ je to pouhých 54 let. Poslední pochybnosti by rozptýlila informace, že i mzdové náklady jsou v podobném poměru ;-)
Tak ti trochu pokazim teoriu. Fortran ovladam a nespadam ani do jedneho vekoveho priemeru ktory si uvieol :-)
do průměru ani spadat nemůžeš, není to množina, ale konkrétní bod. Je klidně možné, že ke každému dvacetipěti letému fortranistovi jsou v komunitě další čtyři stopadesáti letí, pak by teorie platila.
Pokud ale neumíš počítat, těžko se můžeš považovat za fortranistu ;)
Prepisovat Fortran zrovna do C++ je dost zoufalej pocin. Dovedu si predstavit ten pocatecni rozlet mlamoju s tim, jak si nadelaj tridy na kdekterej vektor, matici, komplexni vektor, komplexni matici atd. a posleze premejslej, jak to cpat do BLASu a LAPACKu. V C bez ++ si zas dovedu predstavit, ze matematicky docela citelnej kod ve Fortranu se promeni v neprehlednou zmet volani.
Dnes by mi prislo jako rozumny prepsat to do Julie, ale pravdou je, ze u ni narozdil od Fotranu by pozadavek na pouzivani kodu beze zmen nasledujicich 30 let znamenal dat si bokem i zdroj Julie a v ramci podniku jej drzet pri zivote. A nebo holt kod kontrolovat oproti novejm verzim. Idealne obe varianty, pokud slo o neco kritickyho, typu vesmir/letectvi/stavitelstvi.
julia je super a za dalších třicet let se třeba na podobné věci bude dát použít.
Fortran se i v současné době hodně špatně nahrazuje, Cobol nebo lisp jsou na tom stejně. V C/C++ budou dané algoritmy snad ve všech technických aspektech horší, ale budou na to dostupnější programátoři.