Altro Cosa ne pensate del linguaggio di programmazione Rust?

Buongiorno, vorrei un vostro parere su Rust. Ha senso impararlo? Oppure dovrei concentrarmi su qualcos'altro? Grazie in anticipo.
Se non conosci nessun linguaggio di programmazione ti consiglio di puntare ad altro ma se sei già pratico potrebbe risultati utile. Ti lascio un articolo molto interessante sulle sue peculiarità :)
 
Ultima modifica:
Un tempo ero abbastanza hypato da questo linguaggio, ma col tempo ho cambiato opinione. Ti lascio il link a questo mio post che, nonostante essere molto vecchio, più o meno dice le stesse cose scritte nel link postato da Thomas Shelby. Adesso Servo è pressoché morto perché l'anno scorso Mozilla ha licenziato tutto il team che se ne occupava e il progetto è passato in mano alla Linux Foundation, la quale non è particolarmente motivata nell'investire le proprie risorse nello sviluppo di un web engine. Tuttavia, ormai il linguaggio ha decisamente preso piede ed è diventato di moda, quindi non ha molta importanza che il più grosso software scritto in Rust sia morto. Recentemente anche Torvalds ha dato il via libera per utilizzarlo nello sviluppo di drivers all'interno del kernel linux.

Rust ha uno use-case simile a quello di C++, ma C++ è un linguaggio in continuo cambiamento. Per uccidere un linguaggio di programmazione è necessario che il passo in avanti dal punto di vista tecnologico sia notevole, non basta introdurre un linguaggio leggermente migliore. Il mio punto di vista, da ignorante in materia (non conosco Rust e non sono esperto di C++), è che C++ fa molto schifo e Rust fa un po' meno schifo. I problemi che ho accennato in quel vecchio post esistono ancora: Rust è un linguaggio molto poco malleabile. La mia critica più grande è quello che è il punto forte di LISP e Python, ovvero la possibilità di fare quello che vuoi fare come lo vuoi fare, è un aspetto che Rust sceglie di non considerare affatto. L'obiettivo principale di Rust è la safety (i.e., niente imprevisti), ma ne paga caro in rigidità. Come ho fatto notare nel post che ho scritto anni fa, persino le doubly linked-list diventano un problema e l'alternativa è usare unsafe, arrendendosi a disattivare la feature (e non semplicemente una feature) principale di Rust. A tal proposito linko questo articolo di un paio d'anni fa dove lo sviluppatore di wlroots, dopo oltre 1000 commits in Rust, decide di ricominciare da capo e scrivere codice C: il costo che Rust impone per offrirti safety, almeno per quel progetto, era diventato insostenibile. Che poi, parliamoci chiaro, la keyword unsafe non ti fa ottenere automaticamente 1000 punti in modelling power, ti leva soltanto quella bella spina nel culo che può essere il borrow checker: unsafe Rust is not Python.

C++ non è un linguaggio safe, non lo è per niente, ma se ti metti ad utilizzare il pattern RAII, gli smart pointers e gli static analyzers... continua ad essere un linguaggio di programmazione un di merd*, ma non è quel campo minato che molti credono. Come ho scritto a inizio dello scorso paragrafo: per uccidere un linguaggio di programmazione non basta introdurne uno leggermente migliore. Inoltre, a me non sembra proprio che Rust sia quel linguaggio neat & tidy che molti dicono. Per essere un linguaggio di programmazione moderno, quella sintassi può diventare alquanto atroce. Tutta quella roba dei type specifiers delle volte fa rabbrividire: <&'a T::Iterable as IntoIterator>::Item: AsRef<Foo> + ?Sized. Io penso che sarà inevitabile che a un certo punto, per mantenerlo rilevante, aggiungeranno nuove features. In Java hanno introdotto le functional interfaces, in Go stanno introducendo i generics e in C++ ormai ne hanno combinate di tutti i colori. Quando introduci non-trivial features senza poter rompere la retrocompatibilità è quasi inevitabile che il linguaggio, stilisticamente parlando, diventa meno pulito. C++ è invecchiato come il latte, però ecco... anche Rust, con tutto che è ancora fresco, non profuma di buon vino.

/rant

Sono stato super critico semplicemente perché online di gente a favore di Rust ne trovi a fior fiori. Quando qualcosa diventa alla moda spesso ci si dimentica ti guardare anche l'altra faccia della medaglia. Non penso che Rust sia un linguaggio terribile e sotto un certo punto di vista penso che sia anche molto didattico. Però ecco... ogni tanto bisogna dire le cose come stanno e la community che ci sta dietro non è capace di farlo: ci sono una sfilza di software che sono diventati popolari non perché funzionano bene o meglio di altri, ma perché il circlejerking dietro a sto linguaggio è una cosa allucinante. Manco stessimo parlando di politica.
 
penso sia un magnifico linguaggio di programmazione amo rust
letteralmente amo rust letteralmente e' il miglior linguaggio di programmazione non ci sono equali a rust
letteralmente dovete iniziare tutti ad usare rust non ci sono ne se ne ma usate rust punto
rust.png