Tambourine作業メモ

主にスキル習得のためにやった作業のメモ。他人には基本的に無用のものです。

Elixirで遊んでみる(1)

年末年始、「プログラミングElixir」の第2版を買ったので、ちょっと遊んでみよう

ElixirのインタラクティブシェルIExを実行する。イマドキはDockerだよねと。P4を写経する。

> docker run -it --rm elixir
Erlang/OTP 23 [erts-11.1.5] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]

Interactive Elixir (1.11.2) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> 3 + 4
7
iex(2)> String.reverse "hogefuta"
"atufegoh"
iex(3)> 5 * 
...(3)> 6
30
iex(4)>  
User switch command
 --> q

IExを終了するにはCtrl-Gしてq。ちなみに、本の例では"madamimadam"をString.reverseしてるんだけど、 回文をreverseするのは明らかにサンプルとして不適当なのではないのだろうかw

伝統に則って、Hello, worldを出力するスクリプトを作って実行してみる。

> cat hello.exs 
IO.puts "Hello, World!"⏎     
> docker run -it --rm -v (pwd):/work elixir
Erlang/OTP 23 [erts-11.1.5] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]

Interactive Elixir (1.11.2) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> cd "/work"
/work
iex(2)> ls     
hello.exs     
iex(3)> c "hello.exs"
Hello, World!
[]
iex(4)> 

これがいいやり方なのかはわからない。 そのうち、homebrewでインストールしてみるかも知れないけど、 Dockerに慣れるためにも、しばらくこんな感じで遊んでみる。