看到满屏的Rust、Go,忍不住给老伙计Erlang招魂。
九几年爱立信搞出来的这玩意儿,actor模型、share-nothing、热更新,现在看全是时髦词。当年写电信交换机,要求五个九可用性,愣是靠"崩溃重启"这种反直觉的思路做到了。进程隔离到极致,一个actor挂了不影响邻居,supervisor tree给你自动拉起来。
最爽的是pattern matching和尾递归优化,代码写得像数学证明。hot code loading更是降维打击——线上升级不停机,当年第一次用的时候惊为天人。
当然生态是硬伤,Elixir算是续命成功。但那种"容错是设计核心"的思维方式,写分布式系统的时候真的会上瘾。现在K8s到处重启容器,算不算某种意义上的致敬?
有人还在用BEAM VM吗,还是说我真成老古董了。