Hem d’anomenar Rust un llenguatge de programació fallit?

Els enginyers de Google van presentar recentment “Carbon”, un llenguatge de programació de codi obert aclamat com el possible successor de C++. Amb el nou llenguatge “experimental” que es parla a Internet, també han sorgit converses sobre per què “Rust” no es va convertir en el successor oficial de C++.

Amb la seva pròpia comunitat de persones anomenada ‘Rustaceans’ que utilitzen, contribueixen i estan interessats en el desenvolupament del llenguatge, Rust és un llenguatge de programació de tipus estàtic per al rendiment i la seguretat, especialment la concurrència segura i la gestió de la memòria. La seva sintaxi és similar a la de C++. El projecte de codi obert es va desenvolupar originalment a Mozilla Research. El 2021, la Fundació Rust va agafar la torxa i va impulsar el desenvolupament de la llengua.

En la seva presentació a CPP North, l’enginyer de Google Chandler Carruth va aconsellar als que utilitzen “Rust” que continuïn utilitzant-lo. Carbon és per a desenvolupadors amb grans bases de codi en C++, que són difícils de convertir en Rust. El carboni és específicament el que Carruth va anomenar un “llenguatge successor”, construït sobre un ecosistema ja existent, C++ en aquest cas.

Segons una enquesta de StackOverflow, Rust es considera un dels llenguatges de programació de més ràpid creixement i ha estat classificat com l’idioma que més agrada als seus usuaris. Però, els programadors diuen el contrari.

Un bon llenguatge ha de ser segur, ràpid i fàcil de programar. Però és Rust?

L’òxid és difícil. Té una sintaxi complexa i una corba d’aprenentatge pronunciada. Està dissenyat per resoldre de manera única alguns problemes molt difícils de la programació. Tanmateix, com a principiant, utilitzar Cuda o MPI a Rust no és molt senzill en comparació amb altres opcions com Swift i Go. A més, és lent. Rust és un cargol comparat amb altres idiomes. Fins i tot per a projectes petits, els temps de compilació són dolorosament llargs i les mesures del temps d’execució mostren que Rust és menys eficient que els programes C.
Imagineu-vos reescriure biblioteques C que s’han aplicat dècades d’escrutini només per introduir nous errors. Els errors del codi són el malson dels programadors. Tot i que salva els desenvolupadors d’alguns errors, no els impedeix escriure errors sense voler. Un altre problema són els avisos constants que apareixen entre parèntesis, especialment sobre les declaracions if i els bucles while.

Per tant, l’òxid és molt més complicat i ineficient i aviat pot ser substituït per aquestes eines.

No és tan impopular després de tot?

Tot i que les experiències de primera mà expliquen una història diferent, la majoria dels grans tècnics ja estan utilitzant Rust, mentre que altres tenen previst fer-ho. Recentment, Rust es va unir al panell de llenguatges de programació del servidor compatibles oficialment de Meta. La llista incloïa anteriorment C++, Hack i Python.

“Hi ha una petjada de Rust en augment en els nostres productes i serveis, i ens comprometem amb Rust a llarg termini i donem la benvinguda als primers usuaris”, diu Eric Garcia, gerent d’enginyeria de programari de Meta.

Dropbox utilitza Rust per a alguns fragments crítics de la seva programació. Altres empreses d’Internet probablement triaran Rust quan necessitin una bona seguretat, multi-threading i reduir la quantitat de maquinari. Per exemple, un servei web altament eficient escrit en Rust pot estalviar milions de dòlars en maquinari per a una empresa amb milers de servidors.

Google també té previst utilitzar Rust al nucli de Linux després d’aportar suport per al llenguatge de programació de sistemes Rust a Android. Per reiterar, l’objectiu és reduir les falles de seguretat. Mentrestant, Microsoft també ha recorregut a Rust per reduir els errors relacionats amb la memòria als components de Windows. Actualment, hi ha 25 dipòsits a GitHub del treball públic que Microsoft està fent amb Rust. La majoria d’ells tenen commits ocasionals, que són petits en comparació amb els repositoris 317 C++.

Facebook també ha enfortit els llaços amb Rust unint-se a la Rust Foundation, una organització creada el 2021 per fer de Rust “un llenguatge principal preferit per a la programació de sistemes i més enllà”.

El 2020, els desenvolupadors del nucli de Linux van proposar reescriure el nou codi del nucli de Linux a Rust. La idea era afegir codi nou en Rust al nucli escrit originalment en C. No obstant això, aquesta idea encara es troba en l’etapa de desenvolupament, descrita com a experimental.

En el futur, Rust podria convertir-se en un llenguatge preferit per als dispositius d’Internet de les coses (IoT) amb processadors minúsculs i poca memòria RAM, però necessiten un alt nivell de seguretat. A més, tenint en compte la seva relació amb grans tecnològics, probablement es convertiria en un llenguatge preferit per a les empreses d’Internet que necessiten oferir serveis web a milions d’usuaris.

Leave a Comment

Your email address will not be published. Required fields are marked *