Rust og C ++: Sammen på vej til bedre programmeringsintegration
Rust og C ++: Sammen på vej til bedre programmeringsintegration
Rust Foundation offentliggjorde for nylig et vigtigt dokument på GitHub, der belyser udfordringerne i interaktion mellem programmeringssprog Rust og C ++. Fundamentet skitserer både kort- og lange -term -løsninger til forbedret interoperabilitet mellem disse to programmeringssprog. Dette er især relevant, fordi Rust, selvom det har etableret sig i systemrelateret programmering, ofte møder eksisterende C ++ -applikationer.
Interoperabiliteten mellem Rust og C ++ er et centralt emne, især i udviklingen af indlejrede systemer eller andre ressourcebegrænsede miljøer. De applikationer, der er nævnt af Rust Foundation, er eksempler på praksis: C ++ -systemer, der implementerer nye funktioner med Rust, Rust-baserede systemer, der bruger eksisterende C ++ -kode, og systemer, der bruger flere programmeringssprog. C ++ har en meget længere historie, hvorfor mange projekter ofte skal arbejde med eksisterende C ++ -kode.
udfordringer ved integration
En hovedhindring i den almindelige brug af rust og C ++ er manglen på en værktøjskæde, der giver C ++ og Rust -koden mulighed for at blande den samme fil. En FFI-baseret (udenlandsk funktionsgrænseflade) tilgang er i øjeblikket nødvendig for at forbinde de to programmeringssprog. Dette sker normalt via Application Binary Interface (ABI) af C, som er mere stabil og mere platformuafhængig end den mere komplekse C ++-ABIS.
Et andet stort problem er, at mange af Rusts sikkerhedsfunktioner stort set går tabt, når interaktion med C. Som et resultat, er dette en alvorlig udfordring for udviklere, der ønsker at bruge Rusts stærke sikkerhedsforanstaltninger, mens de interagerer med C på samme tid. Rust Foundation beskriver C som "lingua franca" til FFI -integration, og vanskelighederne ved at skabe et fælles kommunikationsgrundlag er brugen af specifikke rustfunktioner alvorligt begrænset.
strategier for forbedring
Rust Foundation har defineret tre centrale strategier i sin "C ++/Rust Interoperability Problemerklæring" for at optimere interoperabilitet mellem disse sprog. Først og fremmest planlægger fonden at forbedre værktøjer og løse grundlæggende problemer inden for RUST -projektet, der gør integration vanskeligere.
Derudover er målet at finde en konsensus om en strategi, at identificere og implementere de nødvendige ændringer for Rust for at øge interoperabiliteten. Et andet vigtigt punkt er samarbejdet med C ++ -fællesskabet og C ++ standardudvalget for at forfølge fælles sikkerheds- og præstationsmål.
Disse tilgange kommer på et tidspunkt, hvor Google tildelte Rust Foundation generøs støtte på $ 1 million i februar 2024. Disse finansiering er beregnet til yderligere at fremme samarbejdet mellem Rust og C ++.
For mere information kan detaljerne i C ++/Rust -problemopgørelsen på GitHub og i meddelelserne fra Rust Foundation læses. Disse initiativer kan potentielt have en betydelig indflydelse på udviklingen og integrationen af software i fremtiden, især i områder, hvor Rust og C ++ deles.
Kommentare (0)