Rust and C ++:在更好的编程集成的途中一起
Rust and C ++:在更好的编程集成的途中一起
Rust Foundation最近发布了一份关于GitHub的重要文档,该文件阐明了编程语言Rust和C ++之间相互作用的挑战。该基金会概述了短期和长期解决方案,以改善这两种编程语言之间的互操作性。这尤其重要,因为Rust在与系统相关的编程中建立了自身,但通常符合现有的C ++应用程序。
RUST和C ++之间的互操作性是一个核心主题,尤其是在嵌入式系统或其他资源有限环境的开发中。 Rust Foundation提到的应用程序是实践的示例:C ++系统,这些系统具有使用现有C ++代码的生锈系统,以及使用多种编程语言的系统。 C ++的故事更长,这就是为什么许多项目经常必须使用现有的C ++代码的原因。
集成的挑战
RUST和C ++常见使用的主要障碍是缺少允许C ++和Rust Code混合在同一文件中的工具链。目前需要一种基于FFI的(外国功能接口)方法来连接两种编程语言。这通常是通过C的应用二进制界面(ABI)发生的,C比更复杂的C ++ -ABI更稳定,无独立的平台。
另一个大问题是,与C互动时,Rust的许多安全功能在很大程度上丢失了,这对于想要同时与C相互作用的开发人员而言,这是一个严重的挑战。 Rust Foundation将C描述为用于FFI集成的“通用语言”,并且建立共同的通信基础的困难,特定锈特征的使用受到严格限制。
改进策略
Rust Foundation在其“ C ++/Rust互操作问题陈述”中定义了三种中心策略,以优化这些语言之间的互操作性。首先,基金会计划改善工具并解决生锈项目中的基本问题,这使集成更加困难。
此外,目的是找到有关策略的共识,以识别和实施生锈以增加互操作性的必要更改。另一个重要的观点是与C ++社区和C ++标准委员会的合作,以实现共同的安全和绩效目标。
这些方法是在Google在2024年2月获得100万美元的Rust Foundation慷慨支持的时候进行的。这些资金旨在进一步促进Rust和C ++之间的合作。
有关更多信息,可以阅读C ++/Rust问题陈述中的详细信息以及Rust Foundation的公告中的详细信息。这些举措可能会对未来软件的开发和集成产生重大影响,尤其是在共享Rust和C ++的领域。
Kommentare (0)