コンテンツにスキップ
Wikipedia

Elixir (プログラミング言語)

出典: フリー百科事典『ウィキペディア(Wikipedia)』
この記事の出典や参考文献は、一次資料や記事主題の関係者による情報源に頼っています。 信頼できる第三者情報源とされる出典の追加が求められています。
出典検索?"Elixir" プログラミング言語 – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2016年4月)
Elixir
パラダイム 関数型プログラミング並行計算、プロセス指向プログラミング ウィキデータを編集
登場時期 2012年 (2012)
開発者 José Valim ウィキデータを編集
最新リリース 1.18.2/ 2025年1月23日 (21日前) (2025年01月23日)
型付け 強い動的型付け
影響を受けた言語 ErlangRubyClojure ウィキデータを編集
プラットフォーム クロスプラットフォーム ウィキデータを編集
ライセンス Apache-2.0 ウィキデータを編集
ウェブサイト elixir-lang.org ウィキデータを編集
拡張子 ex、exs ウィキデータを編集
テンプレートを表示

Elixir (エリクサー) は並行処理の機能や関数型といった特徴を持つ、Erlang仮想マシン (BEAM) 上で動作するコンピュータプログラミング言語である。ElixirはErlangで実装されているため、分散システム、耐障害性ソフトリアルタイムシステム等の機能を使用することができるが、拡張機能として、マクロを使ったメタプログラミング、そしてポリモーフィズムなどのプログラミング・パラダイムもプロトコルを介して実装されている。[1]

歴史

[編集 ]

高い拡張性があり、Erlangの仮想環境上で動作するシステムを目標に、José Valimによって開発された。 [2]

特徴

[編集 ]

[編集 ]

以下のサンプルはiexシェルまたはファイルに保存した上で elixir <filename> コマンドにて実行可能である。

Hello world
iex> IO.puts"Hello World!"
Hello World!
内包表記
iex> forn<-[1,2,3,4,5],rem(n,2)==1,do:n*n
[1, 9, 25]
パターンマッチング
iex> [1,a]=[1,2]
iex> a
2
iex> {:ok,[hello:a]}={:ok,[hello:"world"]}
iex> a
"world"
モジュール
defmoduleFundo
deffib(0),do:0
deffib(1),do:1
deffib(n)do
fib(n-2)+fib(n-1)
end
end
1000個のプロセスを順番に立ち上げ
fornum<-1..1000,do:spawnfn->IO.puts"#{num*2}"end
非同期実行
task=Task.asyncfn->perform_complex_action()end
other_time_consuming_action()
Task.awaittask

参考文献

[編集 ]
  1. ^ "Elixir". José Valim. 2013年2月17日閲覧。
  2. ^ "Elixir - A modern approach to programming for the Erlang VM". 2013年2月17日閲覧。

外部リンク

[編集 ]

AltStyle によって変換されたページ (->オリジナル) /