Hasty Briefsbeta

双语

Show HN: Ion, a Rust/Tokio powered JavaScript runtime for embedders

8 months ago
  • #JavaScript
  • #Rust
  • #Embedding
  • Ion是一个嵌入Rust程序的JavaScript运行时,适用于插件系统和独立可执行文件。
  • 目标包括易用的API、基于Tokio的事件循环、标准库支持、多线程以及为嵌入者提供的C语言FFI接口。
  • 包含参考可执行文件和使用示例。
  • 支持在隔离上下文中执行JavaScript、生成异步任务以及从Rust调用JavaScript函数。
  • 目标用例包括插件系统、SSR服务和FaaS服务器。
  • 与Node.js、Deno和Bun对比,突出其在可嵌入性和分发方面的局限性。
  • 采用分层设计,包含核心运行时功能和用户态API以支持扩展。
  • 支持解析器、扩展和预处理器,实现灵活的运行时定制。
  • 基于Rust、v8和Tokio构建,具有多线程执行和隔离事件循环特性。