Rust a C ++: společně na cestě k lepší integraci programování

Rust a C ++: společně na cestě k lepší integraci programování

Rust Foundation nedávno zveřejnil důležitý dokument o GitHubu, který osvětluje výzvy v interakci mezi programovacími jazyky REST a C ++. Nadace nastiňuje jak krátkodobá, tak dlouhodobá řešení pro zlepšení interoperability mezi těmito dvěma programovacími jazyky. To je obzvláště důležité, protože rez, i když se etabloval v programování souvisejícím s systémem, často splňuje stávající aplikace C ++.

Interoperabilita mezi Rustem a C ++ je ústředním tématem, zejména ve vývoji zabudovaných systémů nebo jiných prostředí s omezeným zdrojem. Aplikace uvedené nadací Rust Foundation jsou příklady pro praxi: C ++ systémy, které implementují nové funkce s RUS, systémy založené na rezi, které používají stávající kód C ++, a systémy, které používají několik programovacích jazyků. C ++ má mnohem delší příběh, a proto mnoho projektů často musí pracovat s existujícím kódem C ++.

Výzvy integrace

Hlavní překážkou při běžném používání RUS a C ++ je nedostatek nástrojového prostoru, který umožňuje smíchat C ++ a Rust kód ve stejném souboru. Pro připojení dvou programovacích jazyků je v současné době nezbytný přístup založený na FFI (rozhraní cizí funkce). K tomu obvykle dochází prostřednictvím binárního rozhraní aplikace (ABI) C, což je stabilnější a více nezávislé na platformě než složitější C ++-ABIS.

Dalším velkým problémem je, že mnoho bezpečnostních funkcí Rusto je do značné míry ztraceno, když interakce s C. V důsledku toho je to vážná výzva pro vývojáře, kteří chtějí použít Rustova silná bezpečnostní opatření při interakci s C současně. Nadace Rust popisuje C jako „lingua franca“ pro integraci FFI a potíže s vytvořením společného komunikačního základu, použití specifických prvků rez je vážně omezeno.

Strategie pro zlepšení

Nadace Rust definovala tři centrální strategie ve svém prohlášení o problému s interoperabilitou C ++/Rust “, aby se optimalizovala interoperabilitu mezi těmito jazyky. Za prvé, nadace plánuje zlepšit nástroje a vyřešit základní problémy v rámci projektu Rust, které ztěžují integraci.

Kromě toho je cílem najít konsenzus o strategii, identifikovat a implementovat nezbytné změny pro RESS ke zvýšení interoperability. Dalším důležitým bodem je spolupráce s komunitou C ++ a standardním výborem C ++ při dosahování společných cílů v oblasti bezpečnosti a výkonu.

Tyto přístupy přicházejí v době, kdy Google v únoru 2024 poskytl velkorysou podporu nadace Rust Foundation ve výši 1 milionu USD. Toto financování má dále postupovat spolupráci mezi Rustem a C ++.

Pro více informací lze přečíst podrobnosti v prohlášení o problému C ++/Rust o GitHubu a v oznámení nadace Rust. Tyto iniciativy by mohly mít významný dopad na vývoj a integraci softwaru v budoucnosti, zejména v oblastech, kde jsou sdíleny rzi a C ++.

Kommentare (0)