我想要 Rust 的 extern "fil-c":让 FFI 边界也安全
来源:domenkozar.com — 2026-08-13
📋 概述
作者批评 Rust 的 C FFI 是一场「反向的妥协」:Rust 在编译期证明内存安全,却一跨过 unsafe 边界就全盘信任 C 库,而这份信任双方都无法兑现。Fil-C 用 capabilities、运行时检查和并发 GC 重新编译 C/C++,让内存违规变成 panic 而非漏洞。作者希望 Rust 能直接讲 Fil-C ABI,先支持标量、复制的字符串切片与不透明句柄,彻底堵死回到普通 unsafe C 的后门。
🔑 核心要点
- Rust FFI 的安全契约双方都无法强制,跨过边界便不再安全。
- Fil-C 通过重编译 C/C++ 加上运行时检查,把内存违规转为 panic。
- 理想的初版可先做窄接口:标量、复制的字符串切片与不透明句柄。
💡 金句
我们用 Rust 证明安全,却跨过一个 unsafe 边界去相信一份谁都保证不了的契约。
👍 0
👎 0
← 返回 Lobsters 首页