Elixir

Elixir

Elixir

もうちょっと、ちゃんと覚えてから使いたいテーマでしたが、さらっと触れておきます。

概要

Elixir(エリクサー)
本家 https://elixir-lang.org/
日本語解説(レッスン)https://elixirschool.com/ja/

enter image description here

インストール

本家のインストールガイドを参照

Macの場合はbrew install elixirでOK

実行

elixirをインストールするとiexというREPLがついてきます。
Hello World的なやつをやってみます。

$ iex
Erlang/OTP 20 [erts-9.2.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

Interactive Elixir (1.6.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> hello = &("Hello, " <> &1)
#Function<6.99386804/1 in :erl_eval.expr/5>
iex(2)> hello.("keroway")
"Hello, keroway"
iex(3)> IO.puts hello.("Elixir!")
Hello, Elixir!
:ok
ざっと解説。
(1) <> は文字列連結。"Hello, " の後ろに第一引数の値&1を結合する匿名関数をhelloにセット
(2) さきほどのhello"keroway"を渡して実行。結果は連結した文字列。
(3) IO.putsで出力。再度helloを利用して作成した連結文字列を引数に渡す。
出力が表示され、結果:okが返る。

今後

そのうち改めて特性を活かしたネタに挑戦したいです。
(分散処理が活かせるもの・・・できるかな)

Written with StackEdit.

コメント