blog.kotamiyake.me

為せば成る、為さねば成らぬ何事も

真偽値

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に似てるなと感じました。