Jestli k tomu něco můžu, tak co jsem posbíral různě za nářky, tak lidi na Rustu nejvíc trápí/vadí/nesedí: makra, koncept lifetimes, atributy, nečitelnost syntaxe (což je různé, ale třeba proti Zigu je Rust opravdu dost nečitelný) no a klasicky ne-OOP :-)
1. 11. 2023, 17:09 editováno autorem komentáře
Nic ad hominem jsem tam nenapsal. Jenom to, že se chováš jako troll, ke každému článku o jazyku, který by snad někoho mohl zajímat, přicvakneš off topic vlákno o Leanu nebo Idrisu a ten jazyk, o kterém je článek, ideálně pomluvíš, aspoň náznakem.
A ten sock puppet samozřejmě byla taky poznámka o Tvém chování zde (dva účty v jedné diskusi). Nic k osobě.
Není k tomu asi moc co napsat, koukám, že ty jeho urážky smazali a s tím i můj komentář. Označuje trolí a sám stále trolí. Dle mého tu nikdo neuráží Rust ani jeho komunitu. Dokonce se tu sešli vývojáři v C++ a níže debatují. Nic proti nikomu.
Mě rozhodně nevadí, když se nesouhlasí, ale tyhle výkřiky nemám rád. Pak čeká že na to někdo bude reagovat a když nic nepřichází nasází někde osobní útok.
Popravdě, několikrát sem se tu chytnul, to se stává, ale někdy je třeba couvnout zpět. Jsme tu docela individua. Opravdu neznamená že někomu nemusím dát za pravdu, i když s ním v 90% času nesouhlasím.
Jinak co se čeká v diskuzi o jazyku s typovým systémem jako má Rust? Haskell, Idris, Lean se přeci nabízejí pro srovnání. A že se někdo objevuje v diskuzích, kde se o tom vždy zmíní spíš souvisí s tím, že ty diskuze jsou o tématu, které ho zajímá, což jsou zjevně tyhle jazyky.
Jako blbce ze sebe občas udělám, ale tak systematicky po někom jít je opravdu výkon.
Už to nebudu rozmazávat, vzhledem k tomu, že ty jeho příspěvky už jsou pasé.
2. 11. 2023, 13:31 editováno autorem komentáře
No, třeba Azure CTO na to má trochu jiný názor. A není to jen planý výkřik - microsoft přepisuje core libraries do Rustu.
Google by k tomu taky měl co říct.
Vivo teď ohlásili nový OS napsaný v Rustu.
Jako, vidím tu v diskuzi samé komentáře jak je Rust hype, ale který z dalších hype jazyků prorazil takhle hluboko do velkých firem a skutečně začal nahrazovat C/C++?
[Kate]
Zadny. Aspon ja to tak vidim. Podle mych informaci* C++ za posledni rok spis roste a drzi se mezi nejpouzivanejsimi jazyky (C, C++, Java, PHP, atd..).
Me spis napada jina otazka: A potrbujeme vubec nahradu za C++? Ja se spis obavam, zda nebudem za chvilu zachranovat samotne puvodni paradigma C++. Protoze jak uz tu kdysi zaznelo i od zkusenejsich kolegu, C++ uz zacina pomalu byt uplne jiny jazyk (a po nedavnem predstaveni B. Stroustrupa* jeho uvah o tom, kam by se tento jazyk mel ubirat, to citim jeste nalehaveji) ... Velke stesti, ze C++ zustava zpetne kompatibilni i ze starymi specifikacemi. Takze to asi nebude hned nutne. Zatim...
*omluvam se ze to nepodkladam odkazem - musel bych jej hledat na mobilu, ale v pripade velkeho a vazneho zajmu se pokusim...
2. 11. 2023, 19:14 editováno autorem komentáře
S ohledem na to, kolik průšvihů s dost nepříjemnými následky už způsobily memory related chyby a s tím jak je Rust řeší (viz odkaz od Google), řekla bych že ano.
Ano, C++ se mění k nepoznání - z jedné strany ty změny chápu (Třeba snaha o nějakou memory safety ve formě smart pointerů), z druhé strany mi přijde že se do toho jazyku snaží nacpat jakoukoliv moderní věc co proletí kolem a je z toho „pejsek a kočička vařily dort“.
Jenže to první to nespasí - garance jsou mnohem slabší a "insecure by default" prostě pořád vede k chybám.
C++ má obrovskou setrvačnost. Ale čím dál tím častěji vidím u lidí i ve firmách úvahy na téma „OK, začínáme nový projekt, má smysl začít používat Rust?“ - viz MS, Google, Vivo. Všechny ty projekty by byly (Nebo opravdu byly) původně v C++.
Další místo kde vidím že se prosazuje dost slušně je právě webový backend, kde se začíná prát s Go. Zvlášť ve chvíli kdy je důležitá efektivita. https://hackernoon.com/how-using-aws-lambda-with-rust-saved-3x-the-cost-compared-to-using-python-or-net
Zrovna jsem dopsala jednoduchou microservice která řeší nginx forward outh pro OIDC. Celý kontejner zabírá 26 MB, při běhu je skoro pod rozlišovací schopnosti process monitoru.
Promiňte ale ten odkaz, to je přeci úplně zavádějící. Já Vám mohu nasdílet zase odkazy jak odchod z AWS nám ušetřil miliony. Jestli to bylo v Rustu nebo Pythonu je jedno. Já klidně budu psát v Rustu, dokonce i v Javě, když mne za to někdo bude platit a bude to intelektuálně zajímavé, ale takhle tlačit technologii mi přijde dětinské nebo lépe řečeno ideologické.
(Nicméně obdivuju jaké máte zaujetí, dokonce myslím, že jste mnohem vzdělanější než já, ale pochopte také nás přízemní dělníky :D)
Třeba APL je memory safe, to bych tlačil já ;)
2. 11. 2023, 20:02 editováno autorem komentáře
Tak každý jazyk má nadšence. Go, Python, JS... A zvlášť s tím jak se na jedné straně zvyšuje výkon a na druhé straně snižuje komplikovanost, je vidět slušné přesahy na jednu i na druhou stranu v doménách kde je ty technologie vidět. Python a Java na MCU, low level programovací jazyky na webu.
Osobně jsem se Rust začala učit v době kdy vycházel článek na Rootu, a ukázalo se to pro mě jako něco co mě opravdu baví a vyřešilo mi to spoustu problémů které mě na jiných technologiích štvaly. A teď to i relativně slušně vydělává :)
2. 11. 2023, 20:17 editováno autorem komentáře
"Osobně jsem se Rust začala učit v době kdy vycházel článek na Rootu".
Já bohužel také, příliš brzy :D V mé doméně to ale prostě bude minoritní jazyk i kdyby se prosadil sebevíce. Tak já si o víkendu otevřu, vedle Leanu, zapomenuté přiklady v Rustu :D. Pěkný večer.
2. 11. 2023, 20:30 editováno autorem komentáře
[BoneFlute]
A to je presne ono.
Pojem "moderni jazyk" je neco za co se da schovat uplne vsechno. Z mnoha diskuzi se ta fraze da prekladat napr. takto : "Sice presne nevim, co by to melo byt, ale musi to byt neco jineho, protoze to stavajici bytostne nesnasim, uz proto ze me do toho ti stari brontosauri nutili...." Nebo: "Musi se to ucit, premyslet u toho, vyvijet mentalni aktivita, a to je prace a to dneska uz absolutne neni IN." Nebo take: "Hlavne at je to klikaci a barevne!" Atpd.... Tedy vzor 'moderni .*' povazuji za dost neurcity pojem (tedy - pokud nejsi modni navrhar, popr. krejci/svadlena).
Souhlasim s tim, ze jsou situace, na ktere je nejaky konkretni jazyk vhodnejsi vic nez jiny. Kdyby jsi si mohl vybrat: V BASHi muzes vytvorit program pro spravu telefonich kontaktu. V Lue nepochybne take. V Jave take. Presto typuji ze hrabnete spis po Jave. Vidis - a ja bych uvazoval jako prvni o Lue.
Lopata - existuje spousta lopat. S kratsi, ci delsi nasadou, s operkou, naslapnikem, siroke, uzke, kovove, plastove... Vsechno je to lopata, kazda ma sve plusy a minusy a kazdemu cloveku se bude hodit jina a to casto i pro stejny typ cinnosti. Programovaci jazyk neni vice ani mene nez lopata programatora. Co je na co vhodne je dano mnoha faktory, vcetne povahy projektu, zadani, osobnich preferencich, a v neposledni rade hloubce znalosti daneho jazyka. A podle me takove generalizovani je uplne trochu nicem.
A tim se vracim ke sve otazce. Potrebujem v soucasne dobe nahradu za C++? Ja myslim, ze ne. Jazyku je obrovska spusta, presto C++ se drzi leta na prednich prickach oblibenosti. Nahrady uz jsou, a tam kde to vyvojari povazovali za ruzemne je uz pouzili. V ostanich pripadech jej z ruznych duvodu povazovali za rozumnou volbu.
> Potrebujem v soucasne dobe nahradu za C++?
Je tu filozofická otázka, co vlastně znamená náhrada za C++. C++ se uplatnilo v nějakých oblastech, ale v každé oblasti může mít potenciálně jinou náhradu. Někde to může být Java, někde Go, někde Rust. A někde zatím z různých důvodů vhodnou náhradu nemusí mít.
[Vít Šesták]
Jiste, to je pravda. Jen se zapomina faktor casu.
Setrvala pozice C++ v desitce nejoblibenejsich jazyku doklada, ze to nebude jen "nekde". A kdyz se podivame na soucasnou pozici treba Rustu a C++ a k tomu vezmu v uvahu jak dlouho tu ten jazyk je (a hype jaky kolem nej jeho komunita dela), pak se mi zda, ze bud na to jdou od zakladu spatne a nebo proste je zajem o nahradu za C++ celkem maly.
To je počet PRs, takže zahrnuje stávající projekty. Na tu otázku spíš odpovídá https://octoverse.github.com/2022/top-programming-languages
jen by mě zajímala metodika a data, Github tam moc sdílně nevypadá.
https://www.statista.com/statistics/793628/worldwide-developer-survey-most-used-languages/ kreslí taky zajímavá čísla, ale za zdroje se mi platit úplně nechce.
[Kate]
Jasne, asi to neni uplne presne to na co se Vit ptal (nic lepsiho jsem po ruce nemel), ale zas na druhou stranu vychazim z toho ze PRs mas jak do novych tak do stavajicich projektu. I tak z tech dat od tebe vsude vidim C++ v prvni desitce. A minimalne jak muj, tak i tvuj prvni odkaz ukazuje na rostouci tendence u C++. Myslim, ze to lze jen tezko svest na pouhou udrzbou starych projektu - viz to moje upozorneni na faktor casu.
Předpokládám že to navíc bude ukazovat počet PR do projektu podle detekovaného jazyka projektu, což vede k paradoxům kdy třeba aktuálně probíhající přepis Fish shellu do Rustu počítá jako C++ :) To samé ze strany Pythonu matrix server Synapse, kde se do Rustu přepisují výkonově náročné části kódu, Python si s Rustem rozumí velmi dobře.
Pokud je ten můj první odkaz braný z nových repozitářů, byl by to lepší ukazatel.
3. 11. 2023, 08:45 editováno autorem komentáře
Zkus se zeptat Fabiana https://github.com/faho (případně na Mastodonu @faho@octodon.social)
[Vít Šesták & Kate]
Ano to chapu, ale i kdyz vezmu v uvahu vase argumenty, jsem naprosto presvedceny, ze pokud by upadal zajem o dany jazyk - v nasem pripade C++, pak by jsme nutne museli pozorovat sestupnou tendenci behem let. V horizontu roku by nutne musely mit ty grafy drive ci pozdeji nezadrzitelnou a vyznamnou sestupnou tendenci. Podle me by prubeh oblibenosti jazyka mel mit vicemene hyperbolicky prubeh v case (setrvacnost). Nove projekty v danem jazyce by vznikaly v cim dal mensi mire. Mnoho dalsich by postupne upadalo v zapomeni, protoze by byly nahrazovany novymi (ci prepisovany), nebo by proste zastaravali. Nutne se to musi projevit i celkovem poctu PR do daneho jazyka. Ano to co pisete, by ten sesup krivky zadrzovalo, to ano, nemyslim, ze by to melo silu ten pad dlouhodobe zadrzet. Spis to ovlivni a zakulati tvar te krivky prubehu.
Jenze my tu zatim zadny vyznamny (radove v rocich) setrvaly upadek C++ nepozorujeme (a na druhou stranu ani stejne tak nepozrujeme nijak vyznamy vzestup Rustu - jakozto jazyka, ktery si klade za cil C++ nahradit). A rekl bych ze i grafy od Kate to vicemene podporuji.
10 let je v IT cely eon a ja z tech grafu vidim, ze pokud uz zajem o C++ vylozene nestoupa, pak je s relativne malymi vychylkami stabilni na vysoke urovni. :-)
3. 11. 2023, 11:04 editováno autorem komentáře
Zrovna tabulka "Growth in programming languages 2021 - 2022"
Additionally, Rust saw a more than 50% increase in its community, driven in part by its security and reliability. And Python continued to see gains in its usage across GitHub with a 22.5% year-over-year increase driven, in part, by its utility in data science and machine learning.
C v té tabulce je (to by vysvětlil rostoucí zájem o embedded), C++ chybí.
Celkem nečekám že by někdo začal přepisovat stávající obří C / C++ projekty. V jednom z mých bývalých zaméstnání jsme měli v C++ celý webový backend, tuna starého kódu, a fakt si nedovedu představit že by někdo v brzké době investoval čas a peníze do rewrite. Je to performance critical kód, Go nebo Rust by tomu slušely, někdo tehdy navrhoval i Clojure, což by taky byla zajímavá volba, ale ten čas prostě nikdo nezaplatí. Tak se šlo cestou postupných vylepšování toho co je.
S přibývajícím množstvím vývojářů a nutností udržovat stávající projekty bude zákonitě počet C++ vývojářů přinejhorším stagnovat, nejspíš pozvolna růst. Nikdo nečeká že C++ zanikne. Vždyť se drží i jiné jazyky, které měly historicky mnohem menší podíl. (Object Pascal, Visual Basic…). Pochybuju že by mnoho lidí volilo Object Pascal pro novou desktop app, ale zároveň pochybuju že Ghisler přepíše Total Commander třeba do Pythonu.
Co je místy vidět jsou přepisy dílčích knihoven (Windows, Curl přidávající možnost používat Rustí http / TLS knihovny jako backend, Android) a kód v nových OS (Fuchsia, Vivo BlueOS)
Zajímavý je zároveň pohled na GTK / Gnome ekosystém, kde je Rust celkem běžná volba pro nové aplikace.
[Kate]
Ale, prosim te...
50% narust bez uvedeni kontextu vsech ostatnich vyznamnych jazyku muze klidne znamenat, ze ke vsem ctyrem stavajicim projektum pribyli dva nove (kdyz to trochu prezenu). Podobne statisticke ukazatele pouzivalo PR oddeleni ODS, aby presvedcilo sve volice jak skvele si ODS vede. Jenze to byla fabulace a skutecnost byla pohledem obecnejsich statistik diametralne odlisna.
Samotny Rust se nedostal do prvni desitky ani v jednom z tech grafu a jediny graf co mame v teto diskuzi momentalne k dispozici, kde lze urcovat v kontextu ostanich jazyku je ten Gihub2, kde se nacahzi nekde na spodu prvnich 20 oblibenych jazyku a jen velmi mirne a pozvolna roste aspon podle PR
Ja jsem ve svem predchozim prispevku ani v nejmensim nenaznacil jakoukoliv predikci, kde by jazyk C++ mel skoncit ve svem pripadnem padu v oblibenosti. Natoz vubec zaniknout. Naopak predpokladam, ze by graf znazornujici jeho oblibenost mel mit hyperbolicky tvar. Jak znamo Hyperbola jde od nekonecna do nekonecna. Osobne predpokladam, ze by to vypadalo takto: bude v nejakem bode zacinat a prudce klesat, postupne se bude pad zpomalovat a nakonec se ustali nekde na spodu prvni dvacitky oblibenych jazyku - coz maji prave na svedomi projekty ktere bude (lhostejno z jakeho duvodu) nutno udrzovat a nadsenci. Mohu se samozrejme zmylit v rychlosti padu oblibenosti, a pak se bude tvar krivky mene strmy. V kazdem pripade to nebude (s privrenim oci) rovna primka vicemene soubezna s casovou osou.
Ja osobne si vubec netroufam rict, jak velky vliv by na to vsechno mohl mit stoupajici pocet vyvojaru, jednak na to nemam relevantni data a jednak tusim, ze to rozlozeni novych sil bude silne nelinearni a tezko predikovatelne. Klidne tak muzeme vysvetlovat treba ten zajem o Go, nebo JavaScript (zrona webove zazivaji velky boom, takze se da predpokladat, ze se budou nove sily soustredit hodne tam)
[Kate]
Musim se omluvit za jeden svuj omyl.
Nevim jak, ale nejak mi uniklo, ze ty statisky oblibenosti co jsi postovala zobrazuji vic pozic, vsiml jsem si toho az ted.
Kde mezi C++ a Rustem je nejakych 8% rozdil. Jenze mi to nesedi pak s temi PR.
Asi ma nakonec pravdu Churchill :(
3. 11. 2023, 15:10 editováno autorem komentáře
Já si myslím, že vzestup Rustu je docela na začátku.
Stáří Rustu – otázka úhlu pohledu. Začátky lze sledovat již v roce 2006, oficiální oznámení 2010, verze 1.0 až v roce 2015.
Rychlost adopce – ono dost záleží. Teoreticky jazyku stačí kompilátor, prakticky se hodí vývojářské nástroje a knihovny. V případě knihoven jednak záleží na oblasti použití a jednak na tom, jak moc je ten jazyk schopen využít knihovny z jiného jazyka, což může usnadnit nástup. Například Kotlin/JVM má celkem dobrou interoperabilitu a Javou (chybí tam hlavně informace o nullability, ale i s tím lze pracovat), takže lze použít Javové knihovny. V Rustu patrně půjde použít Cčkové knihovny, ale prakticky to znamená nejspíš napsat wrapper, který pořeší lifetimes, safety apod. To plyne z návrhu jazyka. Ano, šlo by ten jazyk udělat konzervativněji, aby lépe interoperoval s C nebo C++, ale tím by se vytratily i výhody.
Potkal jsem různé vznikající jazyky. Mnoho z nich umělo skvělé věci. Chvilku jsem se jim věnoval - ale opatrně: Napíšu v tom něco zajímavějšího a rozsáhlejšího, a co budu dělat, když autor ten jazyk zařízne? A taky že jo.
A ona je to spojitá nádoba. Jazyk potřebuje adoptery, kteří ten jazyk podpoří tím, že ho budou používat. Jenže vývojáři se bojí používat jazyk, který nemá slibnou budoucnost.
Dle mého odhadu, tuto fázi má Rust úspěšně za sebou. Dokonce snad má za sebou i fázi, řekněme, "jazyka na okraji zájmu", kam třeba patří Haskell, Idris, Crystal, D, etc.
Řekl bych, že je dostatečně zabydlen. A nyní záleží jak moc velký koláč si urve. Což je ale zase na druhou stranu otázka, jestli mě to trápí. Maximálně když bych sháněl vývojáře.
Moderní jazyk já osobně chápu tak, že vznikl v (poměrně) nedávné době a jeho tvůrci se ze všech sil snažili ho navrhnout s využitím zkušeností z předchozích jazyků. Opakem jsou jazyky, kde se ty zkušenosti už aplikovat nedají a když ano, tak ten jazyk stejně pořád nese s sebou překonané způsoby fungování a jazyk bobtná a bobtná. Jazyk C++ při nejlepší snaze za moderní označovat nelze, protože to je 10 jazyků v jednom. Bude expandovat? Nemyslím si. Bude v něm pořád dost obživy? Nejspíš ano - pro generace, které na Root chodí, určitě.
3. 11. 2023, 06:51 editováno autorem komentáře
[Ink]
Ano, i tak to da definovat.
Jenze na to se da taky kontrovat, ze uplne vse z toho co kritizujes na "nemodernich" jazycich a naopak zase vyzdvihujes na tech novodobych lze vzdycky dosahnout nejakym zpusobem i u te opacne skupiny. A spousta lidi tak trochu ignoruje, ze zastanci te druhe katyegorie to taky dost casto rikaji. Jinymi slovy kvalitni projekt i naprosty smejd jsi schopen udelat v jakemkoliv jazyce, vzdycky v prve rade zalezi na lidech, kteri na tom projektu pracuji, jak a za jakych podminek k nemu pristupuji.
S tim nic neudelaji ani ty nejdumyslnejsi technologie, zabudovane do daneho jazyka. Navic, je mohou nekteri uzivatele takovehoi jazyka povazovat za omezujici a zbytecny bastl. Ani to, ze autor jazyka vezme ze vsech moznych dneska existujicich jazyku to o cem je presvedcen, ze je to to nejuzitecnejsi, co dosavadni svet programovacich jazyku nabidnul, narve tam jeste neco svyho a voala - mame tu zachranu vsech problemu sveta. Nemame, bohuzel naopak, vetsinou vznikne kockopes, ktery je sam moloch, interne pouziva jiz nejaky existujici jazyk, blbe se uci a chyby mu ... no jak bych tak rekl, urcita konzistence. Krasny priklad je prave Rust ci Vala.
Mimochodem, jen na okraj, tahle diskuze mi hodne pripomina prvni dve povidky T. Prattcheta Barva kouzel a Magicke Fantasticno. Tam taky presne na tehle bazi, probihal odveky, vlekly a nikam nevedouci spor o konceptu magie mezi starou a mladou generaci magu :)
3. 11. 2023, 11:41 editováno autorem komentáře
lze vzdycky dosahnout nejakym zpusobem i u te opacne skupiny
Však tohle by bylo super! Memory safe a garantovaně thread safe C / C++ kód by byla skvělá věc! Jen to prostě už z principu designu jazyka nejde. Ve chvíli kdy by to začal řešit, bude muset zahodit zpětnou kompatibilitu a začne se chovat jako Rust. A to že jde částečně některých vlastností dosáhnout přidáním spousty kódu navíc nepovažuju za řešení. Systém který nemá security by default není secure - což třeba ukazují statistiky chyb v kódu Androidu.
Jinak zrovna konzistentní chování a útěk od molochu byl pro mě důvod vyměnit C++ za Rust :D
(A jako mladá generace mágů si moc nepřipadám, začala jsem programovat na osmibitech)
[Kate]
Nechci zabrednout do uz stokrat omletych hadek, uz jen proto ze sam nemam vlakna rad a navic je povazuji za naduzivanou vec.
Zkusme to jinak. Co myslis, kdo je vlastne ze zakladu zodpovedny za vznik memory leaku? Podle me jsou jen dve moznosti: vykonavany kod (tedy kompilator, interpreter, proste dany jazyk), nebo nevhodne pouzite instrikuce jazyka (tedy ... navrh/programator, proste clovek)?
Oba? Lidská chyba je nejběžnější zdroj chyb v jakémkoliv systému. Design systému tak aby lidským chybám předcházel je esenciální prakticky kdekoliv kde je bezpečnost braná vážně.
(Mimochodem, memory leak je možný snad s každým paměťovým modelem, můžu třeba cachovat do hashmapy a zapomenout mazat záznamy. Bavíme se spíš o zábavách jako use after free, buffer overflow, z null pointer dereference, problémech s thread safety…)
A pak, pokud to necháš čistě na lidech, budeš dělat kompletní audit každé knihovny po každém update? Budeš znova kontrolovat každou funkci která mohla být safe v původním kontextu, ale v novém už není?
Už jsem tu zmínila zábavnou příhodu kdy upstream knihovna přestala být thread safe a nikdo si toho nevšiml. Tohle se hlídá fakt blbě. To samé memory safety. Opt-in safety prostě nefunguje. Opt-out naopak umožňuje izolovat místa kde může k problému dojít.
Teorie že „Dobrý programátor nebude dělat chyby“ je sice pěkná, ale skutečnost tomu neodpovídá a nikdy neodpovídala. Statistiky od Google to ukazují fakt dobře, to samé statistiky od Mozilly. Naopak, osobně se raději kódu kohokoliv kdo mi bude sebejistě tvrdit že jeho C / C++ kód je zaručeně safe vyhnu.
Zodpovědný? Stroj. Protože lidi jsou neschopní.
Delší verze: Rozhodnutí jak to udělat se musí v každé situaci. Rozdíl je v tom, jestli to rozhodnutí bude dělat:
1/ Každý vývojář extra s různým skillem a možná s reviewerem.
2/ Autoři jazyka, kteřý zobecní všechno možné, a ti autoři obvykle bejvají z těch lepších, a navíc mají nad sebou bič v mnoha dalších vývojářích, kteří jim to dál kritizují.
ad moderní jazyk: Ano, je to zkratka. Ale já si pod tím představuju cokoliv, co mi usnadní život.
- traity
- pattern matching, destructuring assignment
- enum s hodnotou (nevím jak se tomu říká, jen vím, že to má Haskell a Rust, a nemá žádný mainstraimový jazyk a já to strašně rád.)
- silný jazyk, který mě bude hlídat
- a další
To jsou všechno věci, které chci protože je umím masivně použít a opírám se o ně.
Můj základní bod zlomu, kdy jsem nad C/C++ zlomil lopatu jsi vyjádřil větou:
> "Musi se to ucit, premyslet u toho, vyvijet mentalni aktivita, a to je prace a to dneska uz absolutne neni IN."
U C/C++ stejně jako u Rust musíš přemýšlet. (V Rustu možná dokonce víc.) Rozdíl je v tom, co za tu námahu dostaneš. Když jsem si toto uvědomil, C/C++ umřel.
Ne, ne, a ne. C/C++ tu měl svůj význam. Protože nebyly jazyky, které by ho mohli plně nahradit. Každý z nich (Java/C#, Lua, Python) měl nějakou daň, kterou jsi musel zaplatit za benefity, které to proti C/C++ přineslo. Rust tohle zlomil.
(Tady se omlouvám všem jazykům, které neměli to štěstí a nedosáhli správného hype.)
ad Java/Lua - tipuješ špatně. Hrábnul bych po Lue. O Javě bych vůbec neuvažoval. Java je na vydělávání peněz.
Rust je jazyk, který hodně chce a hodně za to dává. Naučit se ho je dost náročné a nekomfortní. Kdo ho ale rozumně ovládne, často si ho zamiluje, v žebříčcích oblíbenosti boduje: https://survey.stackoverflow.co/2023/#section-admired-and-desired-programming-scripting-and-markup-languages
Je jasné, že pokud je někdo spokojený a naskillovaný třeba v C++ nebo Javě, po přechodu toužit nemusí, dtto Python, i když tam je PyO3 docela fajn volba. Otázkou samozřejmě je, jak k němu přistupují firmy, ale Google, FB, Amazon, Microsoft, Discord atd. jsou docela dobré příklady, že o Rust zájem je.