Elixir (bahasa pemrograman)
telah digunakan bebrapa perusahaan semacam E-MetroTel, Pinterest[5] dan Moz.[6] Elixir juga digunakan entuk mengembangkan situs web, oleh perusahaan seperti Bleacher Report, Discord, dan Inverse,[7] and for building embedded systems.[8][9] SejarahPembuat bahasa Elixir adalah Jose Valim, Ia memaksudkan bahasa ini untuk dapat memiliki produktivitas dan kemampuan untuk mungkin berkembang yang tinggi pada mesin virtual Erlang dan tetap menjaga kecocokan terhadap ekosistem bahasa Erlang.[10][11] Fitur-fitur
Contoh-contohSintaksis bahasa Elixir banyak terinspirasi dari bahasa Ruby dan Erlang, sehingga relatif mudah dipahami. Jose Valim sendiri juga diketahui sebagai salah seorang pengguna bahasa Ruby. Berikut adalah contoh-contoh yang dapat dijalankan dalam 'iex shell' maupun disimpan ke dalam sebuah berkas dan dijalankan melalui Terminal dengan mengetikan Contoh klasik program Hello world: iex> IO.puts("Hello World!")
Hello World!
Komprehensi iex> for n <- [1,2,3,4,5], rem(n, 2) == 1, do: n*n
[1, 9, 25]
Pencocokan pola (destructuring) iex> [1, a] = [1, 2]
iex> a
2
iex> {:ok, [hello: a]} = {:ok, [hello: "world"]}
iex> a
"world"
Pencocokan Pola (Banyak klausul) iex> case File.read("path/to/file") do
iex> {:ok, contents} -> IO.puts("found file: #{contents}")
iex> {:error, reason} -> IO.puts("missing file: #{reason}")
iex> end
Operator Pipa iex> "1" |> String.to_integer() |> Kernel.*(2)
2
Modul-modul defmodule Fun do
def fib(0), do: 0
def fib(1), do: 1
def fib(n), do: fib(n-2) + fib(n-1)
end
Mengembangkan ribuan proses secara sequential. for num <- 1..1000, do: spawn fn -> IO.puts("#{num * 2}") end
Melakukan tugas secara tidak selaras (async) task = Task.async fn -> perform_complex_action() end
other_time_consuming_action()
Task.await task
Program-program Elixir yang menonjol
Rujukan
Pranala luar
|