有时候,我们只是想试一下 Elixir 的模式匹配、玩一下 Enum 列表,或者看看充满灵魂的 |>(管道符)到底是怎么把数据串起来的。如果为了试这几行代码,还要去安装 Erlang/OTP、配置环境、再建个项目,多少有点折腾。
这时候,使用咱们绿叶网的 Elixir 在线编译器就方便多了。打开网页就能写,点一下运行马上出结果。不管是新手边学边试,还是平时快速验证一段小逻辑,都非常顺手。
页面上方就是咱们的 Elixir 在线编译器。基本流程还是熟悉的四步:写代码、运行、看结果,然后根据输出继续修改。
Ctrl + Enter 快捷键。我们来跑个小例子试试:统计已经付款的订单总金额。代码同时用到了 Map、Enum、匿名函数简写和 Elixir 很有代表性的 |> 管道运算符。
orders = [
%{name: "Keyboard", price: 299, paid: true},
%{name: "Mouse", price: 129, paid: false},
%{name: "Monitor", price: 899, paid: true}
]
total =
orders
|> Enum.filter(& &1.paid)
|> Enum.map(& &1.price)
|> Enum.sum()
IO.puts("Paid total: #{total}")运行结果如下。
Paid total: 1198像上面这种小代码,最适合使用在线编译器来验证。写完直接运行,不需要专门去建个本地项目。
Elixir 在线编译器主打一个 “随写随测”。因为 Elixir 和 C、Java 的思维方式不太一样,很多新概念与其死记硬背,不如直接敲两行代码跑一下来得实在。它通常在以下几个场景最吃香:

简单来说,Elixir 是一门跑在 Erlang 虚拟机(BEAM)上的函数式编程语言。我们可以把它理解为 “穿着现代外衣的 Erlang”。它不仅继承了 Erlang 处理高并发和容错的底层能力,还提供了更舒服的语法(比如好用的管道符 |>)以及更完善的开发工具。
在 Elixir 的世界里,写代码就像是在 “组装流水线”:数据本身是不可变的,我们需要通过一个个函数和模式匹配,把数据一步步转换成你想要的最终结果。
另外值得一提的是,虽然过去大家总把它归类为 “动态类型语言”,但从 1.20 版本开始,Elixir 引入了渐进式类型检查。这意味着哪怕我们不去刻意写类型注解,编译器也会默默帮你揪出不少隐藏的类型错误,让代码写起来更让人安心。

只要我们的项目和 “高并发、强实时、需要长时间稳定运行” 挂钩,Elixir 都是一个很值得考虑的选项。它主要活跃在以下几个场景:

总而言之,不要把 Elixir 简单当成 Erlang 的 “语法糖”。它是一门站在巨人的肩膀上,同时又发展出了自己一套成熟语法、工具链和生态的现代语言。
简单来说,它们更像是 “同跑在一条道上的亲兄弟”。虽然长相(语法)大相径庭,但底层都运行在同一个强大的引擎——Erlang 虚拟机(BEAM)上。
这种关系最大的好处就是无缝互通。你在写 Elixir 代码时,可以直接调用 Erlang 积累了几十年的成熟组件库。所以,如果你在看 Elixir 资料时,突然蹦出几个 Erlang 的模块名,千万别以为是 “串台” 了,它们本来就共用一个生态宝库。
不过,也别简单地把 Elixir 当成 “换了皮的 Erlang”。在日常敲代码时,两者的习惯完全不同。Elixir 发展出了自己非常现代、用起来很顺手的语法体系和工具链,并不是简单的 “Erlang Plus”。

刚入坑 Elixir 时,这 3 个英文缩写经常让人看懵。其实我们可以拿 “造汽车” 来打个比方,瞬间就能理清:

代码写得多了以后,鼠标点来点去多少有点慢。Elixir 在线编译器支持下面这些常用快捷键,小伙伴们先把几个高频的记住就够用了。
Ctrl + Enter:运行代码。Ctrl + Z:撤销、Ctrl + Y:重做。Ctrl + C:复制、Ctrl + V:粘贴。Ctrl + A:全选。Ctrl + X:剪切。Ctrl + /:注释或取消注释。Ctrl + Home:跳转到首行的行首。Ctrl + End:跳转到末行的结尾。其中最值得记住的还是 Ctrl + Enter。刚改完一个模式、管道步骤或者 Enum 处理逻辑,顺手运行一次,很快就能知道代码是否符合预期。