Ръст и C ++: Заедно по пътя за по -добра интеграция на програмиране
Ръст и C ++: Заедно по пътя за по -добра интеграция на програмиране
Фондацията Rust наскоро публикува важен документ за GitHub, който осветява предизвикателствата във взаимодействието между езиците на програмиране Rust и C ++. Фондацията очертава както краткосрочни, така и дългосрочни решения за подобрена оперативна съвместимост между тези два езика за програмиране. Това е особено уместно, тъй като ръждата, въпреки че се е утвърдила в програмирането, свързано със системата, често отговаря на съществуващите приложения на C ++.
Оперативната съвместимост между Rust и C ++ е централна тема, особено при разработването на вградени системи или други среди, ограничени с ресурси. Приложенията, споменати от фондацията Rust, са примери за практика: C ++ системи, които прилагат нови функции с Rust, Rust-базирани системи, които използват съществуващ C ++ код и системи, които използват няколко езика за програмиране. C ++ има много по -дълга история, поради което много проекти често трябва да работят със съществуващ C ++ код.
Предизвикателства на интеграцията
Основна пречка в общото използване на ръжда и C ++ е липсата на инструментариум, който позволява на C ++ и код на ръжда да се смесват в един и същи файл. Понастоящем е необходим подход, базиран на FFI (Интерфейс на чужд функция), за да се свърже двата езика за програмиране. Това обикновено се случва чрез двоичния интерфейс на приложението (ABI) на C, който е по-стабилен и по-независим от платформата от по-сложния C ++-ABI.
Друг голям проблем е, че много от функциите за сигурност на Rust до голяма степен се губят, когато взаимодействието с C. В резултат на това това е сериозно предизвикателство за разработчиците, които искат да използват силните мерки за сигурност на Rust, като същевременно взаимодействат с C. Фондацията Rust описва С като "Lingua Franca" за интеграция на FFI и трудностите при създаването на обща основа на комуникацията, използването на специфични функции на ръжда е силно ограничено.
стратегии за подобрение
Фондацията Rust е дефинирала три централни стратегии в своята „C ++/Rust оперативна оперативна съвместимост“, за да оптимизира оперативната съвместимост между тези езици. На първо място, Фондацията планира да подобри инструментите и да отстрани основните проблеми в проекта за ръжда, които правят интеграцията по -трудна.
В допълнение, целта е да се намери консенсус относно стратегията, да се идентифицират и прилагат необходимите промени за ръждата, за да се увеличи оперативната съвместимост. Друг важен момент е сътрудничеството с общността C ++ и стандартния комитет C ++ за преследване на общи цели за сигурност и изпълнение.Тези подходи идват в момент, когато Google предостави щедрата подкрепа на фондацията Rust от 1 милион долара през февруари 2024 г. Това финансиране има за цел да подобри сътрудничеството между Rust и C ++.
За повече информация подробностите в изявлението на проблема C ++/Rust на GitHub и в съобщенията на фондацията Rust могат да бъдат прочетени. Тези инициативи потенциално биха могли да окажат значително влияние върху разработването и интегрирането на софтуера в бъдеще, особено в области, в които се споделят Rust и C ++.
Kommentare (0)