Roest en C ++: samen op weg naar beter programmeren integratie
Roest en C ++: samen op weg naar beter programmeren integratie
De Rust Foundation heeft onlangs een belangrijk document over GitHub gepubliceerd dat de uitdagingen in de interactie tussen de programmeertalen roest en C ++ belicht. De stichting schetst zowel oplossingen op korte en lange termijn voor verbeterde interoperabiliteit tussen deze twee programmeertalen. Dit is met name relevant omdat roest, hoewel het zich heeft gevestigd in systeemgerelateerde programmering, vaak voldoet aan bestaande C ++ -toepassingen.
De interoperabiliteit tussen roest en C ++ is een centraal onderwerp, vooral bij de ontwikkeling van ingebedde systemen of andere omgevingen met een resource-beperkte omgevingen. De applicaties die door de Rust Foundation worden genoemd, zijn voorbeelden voor praktijk: C ++ -systemen die nieuwe functies implementeren met roest, op roest gebaseerde systemen die bestaande C ++ code gebruiken en systemen die verschillende programmeertalen gebruiken. C ++ heeft een veel langer verhaal, daarom moeten veel projecten vaak werken met bestaande C ++ -code.
Uitdagingen van integratie
Een hoofd obstakel bij het gemeenschappelijke gebruik van roest en C ++ is het ontbreken van een toolchain waarmee C ++ en Rust -code in hetzelfde bestand kunnen mengen. Een op FFI gebaseerde (buitenlandse functie-interface) -benadering is momenteel nodig om de twee programmeertalen te verbinden. Dit gebeurt meestal via de applicatie Binary Interface (ABI) van C, die stabieler en meer platformonafhankelijk is dan de meer complexe C ++-ABI's.
Een ander groot probleem is dat veel van de beveiligingsfuncties van Rust grotendeels verloren gaan wanneer interactie met C. Dies ist folglich eine Ernsthafte Herausforderung für Entwickler, Die Die Starken Sicherheitsmaßnahmen von Rust Nutzen Wollen, während Sie Gleichzeitig Mit C InteragiRen. De Rust Foundation beschrijft C als de "Lingua Franca" voor FFI -integratie en de moeilijkheden om een gemeenschappelijke communicatiebasis te creëren, het gebruik van specifieke roestkenmerken is ernstig beperkt.
strategieën voor verbetering
De Rust Foundation heeft drie centrale strategieën gedefinieerd in haar "C ++/Rust Interoperability Problem Statement" om de interoperabiliteit tussen deze talen te optimaliseren. Allereerst is de stichting van plan om hulpmiddelen te verbeteren en fundamentele problemen binnen het Rust -project op te lossen die integratie moeilijker maken.
Bovendien is het doel om een consensus over een strategie te vinden, om de nodige wijzigingen voor roest te identificeren en door te voeren om de interoperabiliteit te vergroten. Een ander belangrijk punt is de samenwerking met de C ++ -gemeenschap en het C ++ standaardcomité om gemeenschappelijke beveiligings- en prestatiedoelen na te streven.
Deze benaderingen komen op een moment dat Google de Rust Foundation genereuze ondersteuning van $ 1 miljoen in februari 2024 verleende. Deze financiering is bedoeld om de samenwerking tussen Rust en C ++ verder te bevorderen.
Voor meer informatie kunnen de details in de C ++/Rust -probleemverklaring op GitHub en in de aankondigingen van de Rust Foundation worden gelezen. Deze initiatieven kunnen mogelijk een aanzienlijke invloed hebben op de ontwikkeling en integratie van software in de toekomst, vooral in gebieden waar Rust en C ++ worden gedeeld.
Kommentare (0)