真偽値
Elixirではtrue とfalse という値が存在します。
iex(1)> true
true
iex(2)> false
false
iex(3)> true == true
true
iex(4)> true == false
false
また真偽値であることを判定するis_boolean 関数があります。
iex(5)> is_boolean(true)
true
iex(6)> is_boolean(false)
true
iex(7)> is_boolean("true")
false
Atom(Symbol)
AtomはRubyで言うところのSymbolと同じです。
また、こちらもAtomであることを判定するis_atom 関数があります。
iex(1)> :atom
:atom
iex(2)> is_atom(:atom)
true
実はtrue とfalse はAtomらしいです。
iex(3)> true == :true
true
iex(4)> is_atom(true)
true
iex(5)> is_atom(false)
true
数値
基本的な四則演算、2進数、8進数、16進数の表現はRubyと変わりなさそうです。
ひとつRubyと違うところが、割り算の結果。
Elixir
iex(1)> 10 / 2
5.0
Ruby
irb(main):001:0> 10 /2
=> 5
Elixirでは割り算の結果はfloatで返るようです。
ただdiv関数を使えばintegerで結果が返ってきます。
iex(2)> div(10, 2)
5
Ruby, JavaScript以外に何か新しい言語を勉強しようと思い立ち、以前から気になっていたElixirを触ってみることにました。
インストール
$ brew install elixir
$ elixir -v
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]
Elixir 1.3.1
チュートリアル
$ iex
iex(1)> 40 + 2
42
iex(2)> "Hello" <> " World"
"Hello World"
$ vim simple.exs
IO.puts "Hello world from Elixir"
$ elixir simple.exs
Hello world from Elixir
vimでシンタックスハイライト
elixir-lang/vim-elixir: Vim configuration files for Elixir
感想
homebrewのおかげでインストールは楽ちんでした。
IO.putsのあたりがrubyに似てるなと感じました。