Rust ja C ++: yhdessä matkalla parempaan ohjelmoinnin integrointiin

Rust ja C ++: yhdessä matkalla parempaan ohjelmoinnin integrointiin

Rust -säätiö julkaisi äskettäin tärkeän GitHubin asiakirjan, joka valaisee haasteita ohjelmointikielten Rust ja C ++: n välisessä vuorovaikutuksessa. Säätiö hahmottelee sekä lyhytaikaisia että pitkät ratkaisut näiden kahden ohjelmointikielen välisen yhteentoimivuuden parantamiseksi. Tämä on erityisen tärkeää, koska Rust, vaikka se on vakiinnuttanut asemansa järjestelmään liittyvään ohjelmointiin, täyttää usein olemassa olevat C ++ -sovellukset.

Rusteen ja C ++: n yhteentoimivuus on keskeinen aihe, etenkin sulautettujen järjestelmien tai muiden resurssien rajoitettujen ympäristöjen kehittämisessä. Rust-säätiön mainitsemat sovellukset ovat esimerkkejä käytännöstä: C ++ -järjestelmät, jotka toteuttavat uusia toimintoja ruosteilla, ruostepohjaisilla järjestelmillä, jotka käyttävät olemassa olevaa C ++ -koodia, ja järjestelmiä, jotka käyttävät useita ohjelmointikieliä. C ++: lla on paljon pidempi tarina, minkä vuoksi monien projektien on usein työskenneltävä olemassa olevan C ++ -koodin kanssa.

integraation haasteet

Ruosteen ja C ++: n yhteisen käytön tärkein este on työkaluketjun puute, jonka avulla C ++ ja Rust -koodi sekoittaa samaan tiedostoon. FFI-pohjainen (vieraiden toimintojen rajapinta) -lähestymistapa on tällä hetkellä tarpeen kahden ohjelmointikielen yhdistämiseksi. Tämä tapahtuu yleensä C: n C: n binaarirajapinnan (ABI) kautta, joka on stabiilempi ja alustosta riippumaton kuin monimutkaisempi C ++-Abis.

Toinen suuri ongelma on, että monet Rustin turvallisuustoiminnoista menetetään suurelta osin vuorovaikutuksessa C: n kanssa, minkä seurauksena tämä on vakava haaste kehittäjille, jotka haluavat käyttää Rustin vahvoja turvatoimenpiteitä vuorovaikutuksessa C: n kanssa samanaikaisesti. Rust -säätiö kuvaa C: tä "lingua franca" FFI -integraatiolle ja yhteisen viestinnän perustan luomisen vaikeudet, tiettyjen ruosteominaisuuksien käyttö on vakavasti rajoitettu.

Parannusstrategiat

Rust -säätiö on määritellyt kolme keskusstrategiaa ”C ++/Rust -yhteentoimivuusongelma -lausunnossaan” näiden kielten välisten yhteentoimivuuden optimoimiseksi. Ensinnäkin säätiö aikoo parantaa työkaluja ja korjata ruosteprojektin perusongelmat, jotka vaikeuttavat integraatiota.

Lisäksi tavoitteena on löytää yksimielisyys strategiasta, tunnistaa ja toteuttaa tarvittavat ruosteen muutokset yhteentoimivuuden lisäämiseksi. Toinen tärkeä kohta on yhteistyö C ++ -yhteisön ja C ++ -standardikomitean kanssa yhteisten turvallisuus- ja suoritustavoitteiden saavuttamiseksi.

;

Lisätietoja GitHubin C ++/Rust -ongelmalausunnon yksityiskohdat ja ruosteen säätiön ilmoitukset voidaan lukea. Näillä aloitteilla voi olla merkittävä vaikutus tulevaisuudessa ohjelmistojen kehittämiseen ja integrointiin, etenkin alueilla, joilla Rust ja C ++ jaetaan.

Kommentare (0)