Go 开发者应该试试 Odin
来源: rm4n0s.github.io — 2024-10-24
概述
作者用了十年 Go,承认自己总因为「简单」而回到 Go,但也历数了它的痛处:CGO 的别扭、编译与运行慢、要在注释里写 C、不能编译到 WASM、相比 Rust 慢、内存泄漏难查、error 类型不好用。直到遇到 Odin,他形容「一见钟情」。他给 Odin 下了一个配方式定义:60% 的 Go,20% 是你希望 Go 有的特性,10% 数组编程,10% 底层、FFI 与内存管理。他反驳「Odin 只能做游戏」的成见:它自带接近 Go 标准库的核心库,后端开发同样能做,而且有 Go 所缺的数组编程与 struct tag——没有 struct tag,你怎么在数据库与标记语言之间做序列化?他甚至用 union 加线程池复刻了 Go 的 channel + select 与 goroutine 模型。
核心要点
- 他列出的 Go 痛点包括:CGO 麻烦、编译运行慢、注释里写 C、无法编译到 WASM、内存泄漏难查。
- 他给 Odin 的定位是「60% Go + 20% 你想要的 Go 特性 + 10% 数组编程 + 10% 底层/FFI/内存管理」。
- Odin 只有 31 个关键字,但配合 #directive 与 @(attribute) 后读起来像自然英语。
- 自带数组编程与 struct tag,他视之为相对 Rust、Zig、C3、Hare 的差异点。
- 语言本身已冻结稳定,仍在演进的是编译器、工具链与核心库,JangaFX 与 ChiAha 已在生产使用。
- 他没有号召所有人迁移,落点其实是「值得花 10 分钟读一遍 demo.odin」。
金句
这门语言不会再变了,它会一直稳定到你退休。
👍 0
👎 0
返回 Lobsters 首页