Hasty Briefsbeta

双语

Roto: A Compiled Scripting Language for Rust

a year ago
  • #Rust
  • #Scripting Language
  • #Embedded Development
  • Roto是一种专为Rust应用设计的编译型静态类型脚本语言,兼具速度与可靠性。
  • 该语言为Rust编写的BGP引擎Rotonda开发,能实现配置语言无法胜任的复杂路由过滤逻辑。
  • 核心特性包括静态类型检查、基于cranelift的即时编译、热重载能力,以及与Rust深度集成以获得极致性能。
  • 如示例所示,Roto脚本可直接调用宿主程序提供的自定义类型(如AddrRange)和方法。
  • 语言同时支持常规函数和filtermap等专用结构,大幅简化过滤器编写流程。
  • 通过直接复用Rust类型与方法而无需序列化,Roto实现了近乎零开销的跨语言调用。
  • 虽然诞生于Rotonda项目,但Roto作为通用脚本/插件语言设计,适用场景并不受限。
  • 当前Roto仍处于开发阶段,虽未达到稳定状态,但欢迎社区参与测试与反馈。