金色道钉:用 Valen 语言打通 Rust 互操作
来源: verdagon.dev — 2026-09-17
概述
Evan Ovadia 提出「金色道钉」这一目标,比喻 1869 年横贯美国铁路在犹他州合龙的那一刻:把两种彼此隔绝的编译器真正接起来。他正在从零写一门叫 Valen 的语言,编译器要与 rustc 无缝对话,从而在他自己的 Rust 图形库上使用跨语言泛型,并保留线性类型、分组借用检查等特性。文章也坦承现状的限制:线性类型有了但还不能把既有 Rust 类型声明为线性,结构体可以跨边界但必须是零尺寸,分代引用被暂时禁用。
核心要点
- 跨语言调用通常要靠 C ABI 写包装函数,结果是跨语言泛型不可用,边界上还失去内存安全。
- Valen 的编译器叫 valenc,读起来像 "Valence",作者称这是一次极度实验性的尝试,源代码里「有龙」。
- 愿望清单包括 不带共享异或可变限制的借用检查、Zig 风格 comptime、分代引用,以及无需 RefCell 就能持有可变数据的 Rc。
- 现状并不完备:Rust 类型暂时不能声明为线性,Valen 结构体跨边界必须为零尺寸。
- 作者明确声明 全文 0% 由 AI 撰写,理由是若想让人花时间读,就该花时间手写。
金句
让我们做点极度野心勃勃、而且非常不明智的事。
👍 0
👎 0
返回 Lobsters 首页