Elixir语言

13-06-04 banq
    

Elixir 是一个基于Erlang VM的函数式元编程语言(类似Ruby),通过动态语言的灵活的语法和宏能够利用Erlang建立一个并发 分布 失败冗余的高质量代码。

Elixir提供第一层次的模式匹配pattern matching, 通过协议的多态性(类似 Clojure), 别名等。 Elixir 和 Erlang 分享同样的字节码和数据类型,可以直接调用Erlang。

Elixir一个让人亮眼的特点是:一切都是表达式。

defmodule Hello do
  IO.puts "Defining the function world"

  def world do
    IO.puts "Hello World"
  end

  IO.puts "Function world defined"
end

Hello.world
<p>

结果输出:

Defining the function world

Function world defined

Hello World

可以进行元编程和DSL:

defmodule MathTest do
  use ExUnit.Case

  test "can add two numbers" do
    assert 1 + 1 == 2
  end
end
<p>

    

1