Sokat várok tőle, de komolytalan, hogy nincs mögötte valódi sztenderd leírás, a mindenhol hivatkozott könyvben pedig teljes szakaszok hiányoznak „to be added” megjegyzéssel.
...akkor az nem ez a terület. Nem kell hinned nekem, hosszasan érvelni meg nem fogok ebben a kérdésben, de nagy összegben fogadnék erre.
Azt azért megemlítem, hogy a Rust már most nagyon összetett és körülményes, ezek a vonásai pedig csak erősödhetnek. Lassú a fordítója, és aligha lesz sokkal gyorsabb. Kis projekthez "ágyúval verébre", nagyhoz túl lomha, és amit cserébe nyújt, arra pont ezen a területen nincs akkora szükség.
Lesznek hozzá kiváló könyvek, oktatóanyagok, libraryk és keretrendszerek. Mindezek nem segítenek az említett problémákon.
Még annyit, hogy szerintem mihez lesz jó: zöldmezős kernelfejlesztésekhez, beágyazott rendszerekhez, nagy és (legalább részben) sebességkritikus szoftverekhez. Zöldmezős kerneleknél ne op'rendszerre gondolj, hanem például IoT-re és ahhoz kapcsolódó összetettebb dolgokra. A "nagyhoz túl lomha" és a "nagy és (legalább részben) sebességkritikus" között nincs ellentmondás, mert futásidőben sebességkritikus kódokhoz kiválóan beválhat, és például a böngészők (lásd a Mozilla és a Rust kapcsolatát) pont nagyok és sebességkritikusak. Lassan fordít a Rust compilere? Sebaj, ha cserébe könnyebb fejleszteni benne, mint C-ben. Na, ezért.
...ilyen képességekre (is) van szükség. Nem a 151 byte a lényeg, hanem a teljes önállóság, libraryktől, runtime-októl, op'rendszertől.
A cikkbeli példa ugyan linuxos, de lejjebb is mehetünk a Rusttal, valóban a "csupasz fémig".
Ilyen példákból érezhető, miért nem fejleszthető op'rendszer igazán magas szintű nyelvekben. Netes fejlesztésekhez viszont ritkán kellenek ennyire alacsony szintű (low level) lehetőségek, sokat segít viszont a szemétgyűjtés kényelme (Rustból szándékosan hagyták ki, nem is lesz benne), a gyakori apró módosításokhoz jól jön a gyors fordíthatóság (ezt sem várhatjuk a Rusttól). És míg egy kernel vagy egy nagy, sebességkritikus szoftverrendszer fejlesztői csapata többnyire veterán fejlesztőkből áll, és eléggé zárt, addig a netes fejlesztéseknél lazábbak a személyi követelmények, emiatt fontos a forráskódok könnyű olvashatósága, egyszerűsége. Rustban is írható egyszerű kód, de akkor pont elveszítjük az előnyeit.
Nyilván fejleszthetünk Rustban is webre, de nem a legjobb eszköz erre a célra, és sosem lesz az. És a célhoz érdemes eszköz(öke)t választani, nem fordítva.
Kb. ennyi az a hosszabb érvelés, amire első nekifutásra nem vállalkoztam. A Rust tetszik, nagyon örülök neki, webre nem ajánlom, hosszabb távon sem.
Ha a Rust valaha is sikeres lesz... ...akkor az nem ez a terület. Nem kell hinned nekem, hosszasan érvelni meg nem fogok ebben a kérdésben, de nagy összegben fogadnék erre.
Ezt nem értem, miért írod nekem, én nem webes platformot várok tőle, teljesen egyetértünk a hozzászólásodban egyébként leírtakkal. Én az Ada örökösét látom benne, ha lesz belőle valami.
Példa egyben az erősen típusos nyelvek (lehetséges) előnyeire is. Itt írtam bővebben arról, hogy nem a statikus típuskezelés a fontos, hanem az erős típusosság.
És példa arra, miért nem mindegy, milyen nyelv(ek)ben fejlesztünk. Visszatérő gumicsont (nem itt, a Weblaboron), hogy az igazán profik bármilyen (épelméjű) programnyelvvel tudnak eredményesen dolgozni.
..., hogy melyikre gondolhatsz. Jókat ír, de régen olvastam. Kereséssel hármat találtam, melyik illik ide?
Az igazán profik szerintem ki tudják választani a feladathoz legjobban illő nyelvet, és ha nem ismerik (elég jól) azt, akkor vagy megtanulják (ha van rá idő), vagy nem vállalják el a feladatot. És ez az alapállásuk más eszközöknél is, nem csak a nyelveknél. Esetleg bevonnak alvállalkozót, de ahhoz meg kell bízniuk benne.
Vannak, akik ha jó pénzt szagolnak, akkor bármit elvállalnak, aztán üsd-vágd, nem apád módszerrel össze is gányolnak valamit, hogy megkapják a pénzt. Utána lelépnek, kínlódjon a végtermékükkel valaki más. Ők is profik, de másféle skálán mérve.
Ez a két véglet, a köztes spektrumba esik szinte mindenki. (Én is. Rövid az élet, nem vagyok hajlandó bármit megtanulni, sem bármilyen munkát elvállalni.)
if you have a choice of several languages, it is, all other things being equal, a mistake to program in anything but the most powerful one
Az olvashatóság még fontosabb. Kivétel lehet egy összeszokott csapat, amíg nem kell mást bevonni. Ketten írták a Viawebet? Akkor ez jó példa erre, és rossz példa a Lisp kiemelkedő erejére, mert AST-n dolgozó, higiénikus makrók Rustban és Nimben is vannak. Nimben még használni is könnyű őket (Rustot nem ismerem ennyire).
A Lisp olvashatósága siralmas, és nem a zárójelek miatt.
No és a Viaweb sikere inkább múlott a jó időzítésen, mint bármi máson.
A lényeg nem ez lett volna, hanem, hogy szépen levezeti, miért baromság az érvelés, miszerint „az igazán profik bármilyen (épelméjű) programnyelvvel tudnak eredményesen dolgozni” :)
Sokat várok tőle, de
Ha a Rust valaha is sikeres lesz...
Azt azért megemlítem, hogy a Rust már most nagyon összetett és körülményes, ezek a vonásai pedig csak erősödhetnek. Lassú a fordítója, és aligha lesz sokkal gyorsabb. Kis projekthez "ágyúval verébre", nagyhoz túl lomha, és amit cserébe nyújt, arra pont ezen a területen nincs akkora szükség.
Lesznek hozzá kiváló könyvek, oktatóanyagok, libraryk és keretrendszerek. Mindezek nem segítenek az említett problémákon.
Még annyit, hogy szerintem mihez lesz jó: zöldmezős kernelfejlesztésekhez, beágyazott rendszerekhez, nagy és (legalább részben) sebességkritikus szoftverekhez. Zöldmezős kerneleknél ne op'rendszerre gondolj, hanem például IoT-re és ahhoz kapcsolódó összetettebb dolgokra. A "nagyhoz túl lomha" és a "nagy és (legalább részben) sebességkritikus" között nincs ellentmondás, mert futásidőben sebességkritikus kódokhoz kiválóan beválhat, és például a böngészők (lásd a Mozilla és a Rust kapcsolatát) pont nagyok és sebességkritikusak. Lassan fordít a Rust compilere? Sebaj, ha cserébe könnyebb fejleszteni benne, mint C-ben. Na, ezért.
kernelekhez...
A cikkbeli példa ugyan linuxos, de lejjebb is mehetünk a Rusttal, valóban a "csupasz fémig".
Ilyen példákból érezhető, miért nem fejleszthető op'rendszer igazán magas szintű nyelvekben. Netes fejlesztésekhez viszont ritkán kellenek ennyire alacsony szintű (low level) lehetőségek, sokat segít viszont a szemétgyűjtés kényelme (Rustból szándékosan hagyták ki, nem is lesz benne), a gyakori apró módosításokhoz jól jön a gyors fordíthatóság (ezt sem várhatjuk a Rusttól). És míg egy kernel vagy egy nagy, sebességkritikus szoftverrendszer fejlesztői csapata többnyire veterán fejlesztőkből áll, és eléggé zárt, addig a netes fejlesztéseknél lazábbak a személyi követelmények, emiatt fontos a forráskódok könnyű olvashatósága, egyszerűsége. Rustban is írható egyszerű kód, de akkor pont elveszítjük az előnyeit.
Nyilván fejleszthetünk Rustban is webre, de nem a legjobb eszköz erre a célra, és sosem lesz az. És a célhoz érdemes eszköz(öke)t választani, nem fordítva.
Kb. ennyi az a hosszabb érvelés, amire első nekifutásra nem vállalkoztam. A Rust tetszik, nagyon örülök neki, webre nem ajánlom, hosszabb távon sem.
Ha a Rust valaha is sikeres
Ezt nem értem, miért írod nekem, én nem webes platformot várok tőle, teljesen egyetértünk a hozzászólásodban egyébként leírtakkal. Én az Ada örökösét látom benne, ha lesz belőle valami.
Bocs
Igen, Ada, C, C++ utóda lehet.
friss példa a Rust előnyére C++-hoz képest
Példa egyben az erősen típusos nyelvek (lehetséges) előnyeire is. Itt írtam bővebben arról, hogy nem a statikus típuskezelés a fontos, hanem az erős típusosság.
És példa arra, miért nem mindegy, milyen nyelv(ek)ben fejlesztünk. Visszatérő gumicsont (nem itt, a Weblaboron), hogy az igazán profik bármilyen (épelméjű) programnyelvvel tudnak eredményesen dolgozni.
Visszatérő gumicsont (nem
Paul Grahamnek van egy nagyszerű esszéje ezzel kapcsolatban.
Nem ugrik be...
Az igazán profik szerintem ki tudják választani a feladathoz legjobban illő nyelvet, és ha nem ismerik (elég jól) azt, akkor vagy megtanulják (ha van rá idő), vagy nem vállalják el a feladatot. És ez az alapállásuk más eszközöknél is, nem csak a nyelveknél. Esetleg bevonnak alvállalkozót, de ahhoz meg kell bízniuk benne.
Vannak, akik ha jó pénzt szagolnak, akkor bármit elvállalnak, aztán üsd-vágd, nem apád módszerrel össze is gányolnak valamit, hogy megkapják a pénzt. Utána lelépnek, kínlódjon a végtermékükkel valaki más. Ők is profik, de másféle skálán mérve.
Ez a két véglet, a köztes spektrumba esik szinte mindenki. (Én is. Rövid az élet, nem vagyok hajlandó bármit megtanulni, sem bármilyen munkát elvállalni.)
Kereséssel hármat találtam,
Beating the Averages, egész pontosan a The Blub Paradox című szakasz.
Nim, Rust két friss ellenpélda
A Lisp olvashatósága siralmas, és nem a zárójelek miatt.
No és a Viaweb sikere inkább múlott a jó időzítésen, mint bármi máson.
A lényeg nem ez lett volna,