gccrs va fi integrat în GCC 13

gccrs

gccrs este o implementare alternativă completă a limbajului Rust față de GCC

Recent a fost dezvăluit că proiectul gccrs, al cărui scop este să ofere o interfață pentru limbajul Rust către GCC (GNU Compiler Collection), este pe cale de a fi integrat în GCC 13.  La conferința pentru dezvoltatori FOSDEM de la începutul acestei luni, inginerul Arthur Cohen a susținut o prezentare despre gccrs, subliniind starea actuală a lucrării.

Pentru cei care nu cunosc proiectul gccrs, ar trebui să știe că acesta este o implementare alternativă completă a limbajului Rust pe lângă GCC cu scopul de a deveni complet lanțul de instrumente GNU.

Originea acestui proiect este un efort comunității în urmă cu câțiva ani, când Rust era încă la versiunea 0.9; limba creată de Mozilla a fost supusă atât de multe schimbări încât a devenit dificil pentru un efort comunitar să ajungă din urmă.

Acum că limbajul este stabil, este timpul să creați compilatoare alternative:

„Început în 2014 (și relansat în 2019), efortul continuă din 2020 și am făcut mult efort și multe progrese. Am încărcat prima versiune de gccrs în GCC. Deci data viitoare când instalați GCC 13, acesta va avea gccrs înăuntru.

Îl poți folosi și poți începe să-l piratezi, poți raporta problemele când inevitabil se prăbușește și moare îngrozitor. Un lucru important pe care îl facem este să lucrăm la ca suita de testare rustc să funcționeze”, a spus Arthur Cohen în timpul prezentării sale la conferința FOSDEM la începutul acestei luni.

Abilitatea de a rula cu succes suita de testare a compilatorului rustc rămâne, de asemenea, un obiectiv. Potrivit lui Cohen, Interfața GCC a Rust indică, de asemenea, mai vechiul Rust libcore 1.49.

Întrebările frecvente ale proiectului gccrs notează că toate tehnologiile de construcție LLVM, care sunt utilizate de Rust, „le lipsesc unele backend-uri compatibile cu GCC, deci o implementare gccrs poate umple golurile pentru utilizare în dezvoltarea încorporată“.

Rețineți, totuși, că compilatorul Rust-GCC (gccrs) este încă într-un stadiu foarte incipient și nu poate fi folosit încă pentru a compila programe Rust reale.

Echipa GCC a votat în iulie anul trecut pentru aprobarea integrării gccrs ca o suită de construcție. Importanța acestui proiect constă în importanța sa pentru nucleul Linux. De fapt, nucleul Linux este de obicei construit cu GCC, dar planurile de a permite ca limbajul Rust să fie folosit alături de C pentru codul kernelului, din motive de siguranță a memoriei, progresează constant.

Proiectul „Rust for Linux” a fuzionat oficial în arborele principal Linux 6.1 Git în octombrie anul trecut, făcând din Rust al doilea limbaj dedicat dezvoltării Linux, după 31 de ani de dezvoltare exclusiv bazată pe C.

„Vrem ca gccrs să fie un adevărat compilator Rust și nu un proiect de jucărie sau ceva care compilează un limbaj care arată ca Rust, dar nu este Rust; chiar încercăm să facem această suită de teste să funcționeze”, a adăugat el. În timpul prezentării, Cohen a mai spus că, deși interfața Rust a lui GCC 13 a început bine, mai este mult de lucru. Codul de verificare împrumutat lipsește în mod evident în acest moment, suportul pentru modulele încorporate și intrinseci este încă în desfășurare, iar piatra de hotar importantă a compilării codului Rust pentru Linux încă nu a fost atins.

Ca o reamintire, proiectul „Rust for Linux” își propune să introducă un nou limbaj de programare a sistemului în nucleul Linux. Potrivit experților, limbajul Rust are o proprietate cheie care îl face foarte interesant de considerat drept a doua limbă a nucleului Linux: asigură că nu apare niciun comportament nedefinit (atâta timp cât codul nesigur este sănătos).

Aceasta include absența erorilor, cum ar fi utilizarea după gratuită, liberări duble, curse de date etc. Dezbaterile înrudite se învârt în jurul posibilității de a renunța la C în favoarea limbajului Rust. Dar Linus Torvalds, creatorul Linux, a spus că acesta nu este scopul declarat al proiectului Rust pentru Linux.

În cele din urmă, Merită menționat faptul că, deși interfața gccrs a fost îmbinată pentru următoarea versiune a GCC 13, nu se află încă într-o stare în care majoritatea dezvoltatorilor Rust îl pot folosi de fapt ca alternativă la compilatorul oficial LLVM al lui Rust.

Nu ar trebui să fie până anul viitor, cel puțin cu GCC 14 cel puțin.

Fuente: https://fosdem.org/


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.