Je Rust jazyk budoucnosti?

mhi

  • *****
  • 500
    • Zobrazit profil
Re:Je Rust jazyk budoucnosti?
« Odpověď #225 kdy: 04. 12. 2022, 12:14:53 »
prijde mi diskuse skoro jako nabozenstvi.
Tak jsme z toho jazyka nadšení. Je to hřích?

Neni. Ne ze by mne nezajimala psychologie za tim co se deje okolo Rustu, ale toho se zde asi nedobereme. Zajimaji mne na tomto serveru technicke veci, takze bych rad overitelna fakta.

Take mi neni uplne jasne, proc svet nesel jen rozsirenim jazyka C o vlastnosti, ktere by resily problem memory unsafe jazyka (tzn. stale by to bylo na programatorovi, zda pouzije cisty pointer a tim udela memory unsafe program).


Ink

  • *****
  • 654
    • Zobrazit profil
    • E-mail
Re:Je Rust jazyk budoucnosti?
« Odpověď #226 kdy: 04. 12. 2022, 12:27:52 »
Neni. Ne ze by mne nezajimala psychologie za tim co se deje okolo Rustu, ale toho se zde asi nedobereme.

To je stejná psychologie, jako když jsi půl života musel tahat kamení za sebou na kárce a pak jsi dostal náklaďák.

Citace
Take mi neni uplne jasne, proc svet nesel jen rozsirenim jazyka C o vlastnosti, ktere by resily problem memory unsafe jazyka (tzn. stale by to bylo na programatorovi, zda pouzije cisty pointer a tim udela memory unsafe program).

Tohle v různých obdobách existuje dávno. Očividně se to zase tolik neosvědčilo a proto "svět" vymyslel třeba Rust, kde udělat program unsafe je možné, ale má to svoje pravidla a obecně se to nedoporučuje.
« Poslední změna: 04. 12. 2022, 12:31:05 od Ink »

Re:Je Rust jazyk budoucnosti?
« Odpověď #227 kdy: 04. 12. 2022, 13:25:56 »
A jsou tu i navíc lidé kteří nechtějí C. C je přeceňovaný jazyk z pochybným designem, tak už by stálo za to udělat něco pořádného, ne?

mhi

  • *****
  • 500
    • Zobrazit profil
Re:Je Rust jazyk budoucnosti?
« Odpověď #228 kdy: 04. 12. 2022, 13:49:46 »
Neni. Ne ze by mne nezajimala psychologie za tim co se deje okolo Rustu, ale toho se zde asi nedobereme.
To je stejná psychologie, jako když jsi půl života musel tahat kamení za sebou na kárce a pak jsi dostal náklaďák.

Bavime se s tou psychologii kazdy o necem jinem, ale to je tema mimo tento server, do ktereho nechci zabredat vic, nez ze by to u mnoha lidi mohl byt "ego-obranny mechanismus".

Ja rozhodne v cecku nevidim karku, ale prave naopak v mnoha "modernich" jazycich vidim spis "moderni auto ktere prinasi vic problemu nez uzitku". Bohuzel to jsou i novejsi C++, ktere se myslim uzaviraji do vlastniho sveta "reseni problemu ktere sam jazyk prinesl".

Citace
Take mi neni uplne jasne, proc svet nesel jen rozsirenim jazyka C o vlastnosti, ktere by resily problem memory unsafe jazyka (tzn. stale by to bylo na programatorovi, zda pouzije cisty pointer a tim udela memory unsafe program).
Tohle v různých obdobách existuje dávno. Očividně se to zase tolik neosvědčilo a proto "svět" vymyslel třeba Rust, kde udělat program unsafe je možné, ale má to svoje pravidla a obecně se to nedoporučuje.

Muzete mi dat priklad toho rozsireni C o memory safe reseni ?

Ink

  • *****
  • 654
    • Zobrazit profil
    • E-mail
Re:Je Rust jazyk budoucnosti?
« Odpověď #229 kdy: 04. 12. 2022, 14:29:45 »
Citace
Tohle v různých obdobách existuje dávno. Očividně se to zase tolik neosvědčilo a proto "svět" vymyslel třeba Rust, kde udělat program unsafe je možné, ale má to svoje pravidla a obecně se to nedoporučuje.

Muzete mi dat priklad toho rozsireni C o memory safe reseni ?

C++ obsahuje prvky memory safety, C++ je přece rozšířené C. A podobných jazyků je víc.


Re:Je Rust jazyk budoucnosti?
« Odpověď #230 kdy: 04. 12. 2022, 14:30:26 »
Bavime se s tou psychologii kazdy o necem jinem, ale to je tema mimo tento server, do ktereho nechci zabredat vic, nez ze by to u mnoha lidi mohl byt "ego-obranny mechanismus".
To je docela zajímavé téma a přijde mi, že obranný mechanismus je na obou stranách. Hodně lidí z C/C++ komunity vidí v Rustu ohrožení, protože se může stát, že Rust C/C++ v budoucnu nahradí. Lidé obecně nemají rádi změny a drží se toho, co znají, to je normální lidské chování. Takže se Rustu logicky brání. Naopak lidé z Rust komunity na ně tlačí někdy až moc agresivně, což vede řekněme k různým nedorozuměním.

Ja rozhodne v cecku nevidim karku, ale prave naopak v mnoha "modernich" jazycich vidim spis "moderni auto ktere prinasi vic problemu nez uzitku". Bohuzel to jsou i novejsi C++, ktere se myslim uzaviraji do vlastniho sveta "reseni problemu ktere sam jazyk prinesl".
Problémem C je, že má na svědomí asi tak 90% kritických bezpečnostních chyb kvůli tomu, že je memory unsafe. Google uvádí, že dle jeho statistik připadá jedna bezpečnostní chyba na 1000 řádek C kódu. To je strašné číslo a nejde s tím nic dělat, protože ty chyby způsobuje lidský faktor. Lidé prostě nejsou schopni psát v C bez chyb. Takže jediné řešení je zbavit se C a použít memory safe jazyk. Tím zmizí 90% kritických bezpečnostních chyb.

Muzete mi dat priklad toho rozsireni C o memory safe reseni ?
Z C není možné udělat memory safe jazyk bez ztráty zpětné kompatibility. C by se muselo hodně předělat a vzniklo by něco podobného Rustu. Proto takové snahy nemají smysl, lepší je začít znovu a C nechat být. Tady nejde jít cestou evoluce, revoluční změna je nutná.

mhi

  • *****
  • 500
    • Zobrazit profil
Re:Je Rust jazyk budoucnosti?
« Odpověď #231 kdy: 04. 12. 2022, 15:22:32 »
Pokud jde o ty ego-obrany, myslim to asi trosku jinak.

Nevim jaky maji pocit lide "tlacici" Rust, rekl bych, ze jejich pocit muze byt z vetsi casti "mam skvely jazyk ktery vsem ukaze jak jsou/byli blbi" (a tim i "a jak ja to umim").

Muj pocit neni nejake ohrozeni, popravde mi je jedno ze lide pouzivaji Rust, C#, Go, Javu, PHP, Python, atd. Jen mne opravdu nebavi resit problemy, ktere mi jini lide takto prinaseji do zivota. Takze bude-li podminkou prekladu kernelu mit Rust prekladac a resit nejake zavislosti, knihovny, apod., tak se to stava i mym problemem, ktery musim resit, bez pro mne pridane hodnoty.



Abych dal priklad odjinud, nektere zmeny v novejsich gcc ve spojeni s C++11 privedly neprelozitelnost cele rady zdrojaku (nejen mych :) ). Takze na to, abych je mohl prelozit jsem musel mechanicky opravit stovky radek kodu. Paradoxne neco z toho po zprocesovani indentem se zaneslo zpatky (operator "" ). Zbytecne ztraceny cas jen kvuli tomu, ze nekdo si nedokaze predstavit ze stale existuje C99 kod. Tohle mi neskutecne vadi.

Re:Je Rust jazyk budoucnosti?
« Odpověď #232 kdy: 04. 12. 2022, 15:49:21 »
Pokud jde o ty ego-obrany, myslim to asi trosku jinak.

Nevim jaky maji pocit lide "tlacici" Rust, rekl bych, ze jejich pocit muze byt z vetsi casti "mam skvely jazyk ktery vsem ukaze jak jsou/byli blbi" (a tim i "a jak ja to umim").
Myslím, že to trochu jinak. Pokud já někam tlačím Rust (obecně to nedělám moc rád), tak je to stylem "mám skvělý jazyk, který řeší spoustu bezpečnostních problémů, které jsou v C/C++ a je stejně rychlý". Ale i tohle se samozřejmě potkává s odporem, protože lidé změny moc nechtějí, to je přirozená lidská vlastnost.

Muj pocit neni nejake ohrozeni, popravde mi je jedno ze lide pouzivaji Rust, C#, Go, Javu, PHP, Python, atd. Jen mne opravdu nebavi resit problemy, ktere mi jini lide takto prinaseji do zivota. Takze bude-li podminkou prekladu kernelu mit Rust prekladac a resit nejake zavislosti, knihovny, apod., tak se to stava i mym problemem, ktery musim resit, bez pro mne pridane hodnoty.
V Linuxu bylo za dobu jeho existence objeveno asi 800 chyb souvisejících se špatnou práci s pamětí, většina s dopadem na bezpečnost (remote code execution, gain information...). A to se bavíme jen o známých chybách, těch zatím neobjevených bude řádově více. Žádná z těchto chyb v kernelu nebyla, pokud by se použil memory safe jazyk. Ty v tom možná nevidíš přidanou hodnotu, jiní lidé ale ano.

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Je Rust jazyk budoucnosti?
« Odpověď #233 kdy: 04. 12. 2022, 16:35:34 »
Já tě jinak chci vyprovokovat, třeba něco napsat :-)
Jdeš na to fikaně ;) Zrovna GADT nejsou žádná věda. Když definuju (běžný) ADT, určím typ, například “List a”, a k němu konstruktory. V případě GADT se určí typ pro každý konstruktor zvlášť. V případě “Vect” (Nat -> Type -> Type, Nat je typ přirozených čísel) mám konstruktor “Nil” typu “Vect 0 a” (ta nula je délka vektoru) a druhý konstruktor “Cons” typu “a -> Vect n a -> Vect (n+1) a”. To ADT neumí, protože jednou tam je nula a jednou “n+1”.

mhi

  • *****
  • 500
    • Zobrazit profil
Re:Je Rust jazyk budoucnosti?
« Odpověď #234 kdy: 04. 12. 2022, 17:24:21 »
Myslím, že to trochu jinak. Pokud já někam tlačím Rust

V Linuxu bylo za dobu jeho existence objeveno asi 800 chyb souvisejících se špatnou práci s pamětí, Žádná z těchto chyb v kernelu nebyla, pokud by se použil memory safe jazyk. Ty v tom možná nevidíš přidanou hodnotu, jiní lidé ale ano.

ad ego obrany: jejich "kouzlo" je, ze ten kdo je pouziva "nenahledne za ne", jinak by mu prestaly fungovat. Ja osobne na to jdu metodou, ze se zeptam "co by se stalo kdyby ...<proti cemu se domnele branim>". Zracionalizovat si dokazeme vsichni asi skoro vsechno, dokud se to nebije uplne s realitou. Psychotici tedy dokazou i to :).

Verim tomu, ze i Lennart Poettering veri, ze prinasi dobro v systemd. Ja si o nem na oplatku zase myslim, ze systemd je takova jeho narcistni ego-obrana pred jeho vlastnim pocitem menecennosti.

Pokud jde o nutnost memory safe jazyku, s tim nepolemizuju, akorat stale nejsem presvedcen, ze cesta je prave pres Rust.

Rekl bych, ze treba reseni kernelu bude spis ve zmene paradigmatu, SystemV/BSD kernel ma prilis mnoho nedostatku.

Uz jsem dost offtopic, tak se omlouvam.

BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:Je Rust jazyk budoucnosti?
« Odpověď #235 kdy: 04. 12. 2022, 20:07:40 »
Pokud jde o nutnost memory safe jazyku, s tim nepolemizuju, akorat stale nejsem presvedcen, ze cesta je prave pres Rust.

Pokud si jako kritérium vezmeš memory safe, tak ačkoliv Rust není dokonalý, tak čím by si mu chtěl konkurovat? (Bavíme se o nízkoúrovňovém jazyku. Na nějaké appky vždycky můžeš použít Javu, samozřejmě.) Jaké máš výhrady, nebo očekávání?

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Je Rust jazyk budoucnosti?
« Odpověď #236 kdy: 04. 12. 2022, 20:21:32 »
Pokud jde o nutnost memory safe jazyku, s tim nepolemizuju, akorat stale nejsem presvedcen, ze cesta je prave pres Rust.

Pokud si jako kritérium vezmeš memory safe, tak ačkoliv Rust není dokonalý, tak čím by si mu chtěl konkurovat? (Bavíme se o nízkoúrovňovém jazyku. Na nějaké appky vždycky můžeš použít Javu, samozřejmě.) Jaké máš výhrady, nebo očekávání?
Spark?

Re:Je Rust jazyk budoucnosti?
« Odpověď #237 kdy: 04. 12. 2022, 21:19:46 »
...
Abych dal priklad odjinud, nektere zmeny v novejsich gcc ve spojeni s C++11 privedly neprelozitelnost cele rady zdrojaku (nejen mych :) ). Takze na to, abych je mohl prelozit jsem musel mechanicky opravit stovky radek kodu. Paradoxne neco z toho po zprocesovani indentem se zaneslo zpatky (operator "" ). Zbytecne ztraceny cas jen kvuli tomu, ze nekdo si nedokaze predstavit ze stale existuje C99 kod. Tohle mi neskutecne vadi.

Nikdy nepochopim tuto ideu, ked raz nieco napisem v nejakom jazyku a ten jazyk funguje a vyvyja sa dalsie desatrocia, tak to stale musi ist prelozit aj najnovsou verziou jazyka? Moja odpoved je nie.
Pretoze nove verzie jazyka (akehokolvek jazyka, aj c++) musia mat moznost priniest breaking changes, ak to treba pre vyvoj jazyka. Inak sa z akehokolvek jazyka stava v momente jeho vytvorenia jazyk s obmedzenou dobou pouzitia, pretoze jedneho dna budu tvorcovia stat pred otazkou, ci pridat podporu nejakych novych ficur/principov/..., alebo nechat jazyk padnut na hnojisko dejin.
Riskovat to vsetko len kvoli tomu aby si nejaky franta z hornej dolnej vedel skompilovat svoj 40rokov stary kod s najnovsou verziou jazyka? Ak chcete pouzivat desiatky rokov stary kod a modifikovat ho, tak ho za A bud potrebujete aktualizovat do dnesnych standardov, alebo za B pouzivat dobovu techniku/technologiu.

Kazdy z nas ma zarucene predkov ktori zili 10 000 rokov dozadu, inak by sme neexistovaly pretoze casova kauzalita proste nepusti. Pred 10 000 rokmi ale ludia hovorili inymi jazykmi, ak vobec nejake mali, ak to neboli (pre nas z dnesneho pohladu) iba nejake pazvuky, hmkanie, mlaskanie a co ja viem co dalsie.
To ze dnes pouzivame ine jazyky, ktore su nekompatibilne s jazykmi starymi 10k rokov, znamena ze mame dnesne jazyky zahodit? Pretoze zaznamy stare 10k rokov sa nedaju precitat dnesnymi jazykmi, pretoze dnesne jazyky (neratam nejake kmene s 50timi obyvatelmi uprostred amazonie zaseknute v case) nepouzivaju mlaskanie a hmkanie na dorozumievanie, ale artikulovane slabiky vytvarajuce slova -> chces pouzivat stare veci v dnesnom svete, bud ich upgraduj, alebo sa zmier s tym ze musis pouzivat dobove veci (v tomto pripade verziu jazyka/kompilatora z ery toho programu)


BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:Je Rust jazyk budoucnosti?
« Odpověď #238 kdy: 04. 12. 2022, 22:50:06 »
Pred 10 000 rokmi ale ludia hovorili inymi jazykmi, ak vobec nejake mali, ak to neboli (pre nas z dnesneho pohladu) iba nejake pazvuky, hmkanie, mlaskanie a co ja viem co dalsie.

Navzdory tomu, že té argumentaci rozumím a souhlasím, a abych si udržel špatnou pověst, tak si neodpustím rejp: Není jediný důkaz toho, že by se jazyky vyvíjeli. Když porovnáš nejstarší jazyk Egyptštinu a porovnáš s libovolným moderním jazykem, tak jsou tam sice změny, ale ne kvalitativní (něco se sofistikuje, něco se zjednodušuje). Tvrzení, že na začátku bylo mlaskání a krkání je tvrzení založené na tom, že to tak přece muselo být.

Rike

Re:Je Rust jazyk budoucnosti?
« Odpověď #239 kdy: 04. 12. 2022, 23:10:47 »
Před 10 tisíci lety, to je zemědělství a sídlištní kultury, takže určitě žádné mlaskání a hekání  ;)