gccrs bus integruotas į GCC 13

gccrs

gccrs yra visiškai alternatyvus Rust kalbos įgyvendinimas per GCC

Neseniai paaiškėjo, kad gccrs projektas, kurio tikslas yra pateikti Rust kalbos sąsają su GCC (GNU Compiler Collection), bus integruotas į GCC 13.  Anksčiau šį mėnesį vykusioje FOSDEM kūrėjų konferencijoje inžinierius Arthuras Cohenas pristatė gccrs pristatymą, kuriame apibūdino dabartinę darbo būklę.

Tie, kurie nežino apie gccrs projektą, turėtų žinoti, kad tai yra pilnas alternatyvus Rust kalbos diegimas GCC viršuje su tikslu tapti visiškai GNU įrankių grandine.

Šio projekto kilmė – bendruomenės pastangos prieš kelerius metus, kai Rust dar buvo 0.9 versija; Mozilla sukurta kalba patyrė tiek daug pokyčių, kad bendruomenės pastangoms pasivyti tapo sunku.

Dabar, kai kalba yra stabili, laikas sukurti alternatyvius kompiliatorius:

„Pradėta 2014 m. (ir atnaujinta 2019 m.), pastangos tęsiasi nuo 2020 m. ir mes padarėme daug pastangų ir padarėme didelę pažangą. Į GCC įkėlėme pirmąją gccrs versiją. Taigi kitą kartą įdiegus GCC 13, jame bus gccrs.

Galite jį naudoti ir galite pradėti įsilaužti, galite pranešti apie problemas, kai jis neišvengiamai sugenda ir siaubingai miršta. Vienas didelis dalykas, kurį darome, yra tai, kad „rustc“ bandymų rinkinys veiktų“, – sakė Arthuras Cohenas per savo pranešimą FOSDEM konferencijoje anksčiau šį mėnesį.

Galimybė sėkmingai paleisti „rustc“ kompiliatoriaus testų rinkinį taip pat išlieka tikslu. Anot Coheno, Rust GCC sąsaja taip pat nurodo senesnę Rust libcore 1.49 versiją.

Gccrs projekto DUK pažymi, kad visoms LLVM kūrimo technologijoms, kurias naudoja Rust, trūksta kai kurių su GCC suderinamų užpakalinių sistemų, todėl gccrs diegimas gali užpildyti spragas, skirtas naudoti įterptajame kūrime"

Tačiau atminkite, kad Rust-GCC kompiliatorius (gccrs) vis dar yra labai ankstyvoje stadijoje ir dar negali būti naudojamas tikroms Rust programoms kompiliuoti.

GCC komanda praėjusių metų liepą balsavo už gccrs integravimą kaip statybinis komplektas. Šio projekto svarba slypi jo svarboje Linux branduoliui. Tiesą sakant, „Linux“ branduolys paprastai yra kuriamas naudojant GCC, tačiau planai leisti „Rust“ kalbą branduolio kodui naudoti kartu su C, siekiant atminties saugos, nuolat tobulėja.

Projektas „Rust for Linux“ praėjusį spalį oficialiai susijungė į pagrindinį „Linux 6.1 Git“ medį, todėl „Rust“ tapo antrąja kalba, skirta „Linux“ kūrimui po 31 metus trukusio išskirtinai C pagrindu sukurto kūrimo.

„Mes norime, kad gccrs būtų tikras „Rust“ kompiliatorius, o ne žaislų projektas ar kažkas, kas kompiliuoja kalbą, kuri atrodo kaip „Rust“, bet nėra „Rust“; mes tikrai stengiamės, kad šis bandymų rinkinys veiktų“, – pridūrė jis. Pristatymo metu Cohenas taip pat sakė, kad nors GCC 13 „Rust“ sąsaja yra gera pradžia, dar reikia daug nuveikti. Pasiskolinto patvirtinimo kodo šiuo metu akivaizdžiai nėra, įtaisytųjų ir vidinių modulių palaikymas vis dar tebevyksta, o svarbus „Rust“ kodo, skirto „Linux“, kompiliavimo etapas, dar nepasiektas.

Primename, kad projektas "Rust for Linux" tikslas - įdiegti naują sistemos programavimo kalbą į Linux branduolį. Pasak ekspertų, „Rust“ kalba turi esminę savybę, dėl kurios labai įdomu ją laikyti antrąja „Linux“ branduolio kalba: ji užtikrina, kad neatsiras neapibrėžtas elgesys (kol nesaugus kodas yra protingas).

Tai apima klaidų nebuvimą, pvz., nenaudojamą naudojimą, dvigubą atlaisvinimą, duomenų lenktynes ​​ir kt. Susijusios diskusijos sukasi apie galimybę atsisakyti C rūdžių kalbos naudai. Tačiau Linusas Torvaldsas, „Linux“ kūrėjas, teigė, kad tai nėra projekto „Rust for Linux“ tikslas.

Galiausiai, Verta paminėti, kad nors gccrs sąsaja buvo sujungta kitai GCC 13 versijai, ji dar nėra tokios būsenos, kurioje dauguma Rust kūrėjų iš tikrųjų galėtų juo naudotis kaip alternatyva oficialiam Rust LLVM kompiliatoriui.

Tai neturėtų būti iki kitų metų, bent jau su GCC 14.

Fuente: https://fosdem.org/


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.