U odnosu na
ovo:
C is the most portable programming language.
Da, da. Počev od "hello, world" programa, kao što je diskutovano
ovde. Rust-u se zamera "ograničavanje" na LLVM. Kao prvo, LLVM pokriva ono što je u najvećem broju slučajeva releventno, a kao drugo, ko kaže da ne može da se iskoristi GCC backend ako je neko baš zapeo (ili nešto drugo što podržava odgovarajući IL)?
C has a spec.
Da, da. Kao što C# i .Net povremeno narušavaju kompatibilnost unazad. Samo što postoji rešenje za to u vidu konfiguracionog (toml) fajla gde su navedene verzije i rasta i biblioteka (crates) koji se koriste u projektu, slično kao i u C#-u i .Net-u. Vidim, propala je industrija koja ih koristi, a Javi je mnogo velika prednost što čuva kompatibilnost unazad.
C has many implementations.
Ma, super, zbog tog "nedostatka" su propali i python i C# i Java. što imaju jednu glavnu implementaciju koja je praktično kao jedina.
C has a consistent & stable ABI.
Ma, da, specificiranje verzija u toml-u ništa ne rešava, a Java like čuvanje 100% kompatibilnosti unazad je keva.
Cargo is mandatory.
Koliko znam, jedna od kritika C i C++ jezika je što nemaju svoj build sistem, pa vlada haos sa raznim make, automake, cmake, qmake... build sistemima. Zato svi novoji jezici (počev od python-a) imaju svoj sistem.
Concurrency is generally a bad thing.
Aha, samo što Rust nudi rešenja za dead lock i reetrant (da, preko borrow checker-a). Niko nije savršen, a poređenje je napravljeno sa Go-om koji je specijalizovan baš ta to.
Safety.
Ma, da, nudi ozbiljna rešenja za to, ali ništa nije svemoguće, pa pljuj što nije konačno rešenje svih sigurnosnih problema.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.