我ID叫rust42,但真要说最爱的语言,得投Elixir一票。早年被线程、锁、竞态条件折腾得够呛,总觉得并发是件很痛的事。摸上BEAM虚拟机才明白,原来可以这么轻。
BEAM跑的是轻量进程而非系统线程,开几百万个进程开销小到离谱,调度器自动把活儿摊到各核心,你基本不用管。数据不可变,进程间只靠发消息,没有共享内存就谈不上锁,race condition从源头被掐掉,比到处加mutex舒服太多。
写起来也爽。管道符 |> 把数据从左串到右,整段代码读起来像在讲一个故事;模式匹配拿到东西当场拆,逻辑清清楚楚。它底层是Erlang那套,电信级99.999%可用性的底子,稳得不行。CPU密集的活儿另说,但论"把并发写成人话",它目前是我心里的天花板。