为什么选择 Hew?
Hew 面向这样的服务:故障、并发和协议边界应该成为语言契约的一部分,而不是散落在库中的约定。Actors、supervision、wire types 和原生编译被一起设计,让编译器能看见更多系统模型。
Hew 有广阔的语言目标,而 v0.9.3 是一个具体的 compiler/runtime release。这些回答会区分今天可用的内容,以及这门语言正在构建的目标。
Hew 面向这样的服务:故障、并发和协议边界应该成为语言契约的一部分,而不是散落在库中的约定。Actors、supervision、wire types 和原生编译被一起设计,让编译器能看见更多系统模型。
OTP 仍然是容错系统的参考标准。Hew 选择了不同权衡:静态类型、编译期 actor 边界、协议感知工具和原生 LLVM 输出,同时延续 let-it-crash 的经验。
当你需要显式所有权和 async runtime 时,Rust 加 Tokio 非常出色。Hew 从不同中心出发:actors、受监督故障、结构化任务作用域和 wire 契约都是语言特性,而不是每个项目都要手工组装的架构。
Hew 需要可靠的原生 backend,但不想从零发明 code generator。LLVM 提供成熟的优化、广泛的平台覆盖和易于理解的 IR。编译器用 Rust 直接从 Hew MIR 转换到 LLVM IR。
Hew 还没有生产就绪。它适合实验、本地服务、语言评估,以及想深入 compiler 和 runtime 内部的贡献者。对于停机具有商业或安全后果的系统,状态页列出了当前边界。
当前版本可以编译并运行真实 Hew 程序,包含函数、类型、actors、supervision、状态机、wire types、测试、Playground 和原生 LLVM 输出。示例页展示了最佳入口。
路线图跟踪分布式 actor 体验、更广泛的协议保证、package 工作流、backpressure 行为、资源生命周期加固和生产运维。状态页会逐项跟踪。
Hew 没有全局 garbage collector。普通 owned values 会被递归释放,actor 状态保持隔离,仿射资源只有一个所有者。<code>#[resource]</code> 值会在离开作用域时自动关闭;<code>#[linear]</code> 值必须在每条路径上到达显式的消费操作。
Hew 目前由一个人维护。路线图按这个现实来规划。聚焦的贡献最容易合入:bug 报告、文档、示例和有范围的 issue;更大的设计工作应从 issue 或 discussion 开始。
Hew 采用 MIT OR Apache-2.0 双许可证。这让个人、学术和商业使用都更直接,也符合常见 Rust 生态实践。
从具体事项开始:报告可复现 bug、改进文档、添加聚焦示例,或在承担大范围改动前加入设计讨论。社区页指向持久渠道。
它们是独立轨道。Hew release version 命名已发布的 compiler/runtime/tooling bundle。HEW-SPEC revision 命名语言规范历史。一个 release 可以实现与其版本号不一致的 spec level。