Hello Qiita
@kikuyuta さんからの「Qiita書くでね」「これからはアウトプットでね」ってメンション圧力を忖度して、これまでリードオンリーだったQiitaに不定期で自分の勉強まとめもかねて投稿しようと思います。
やったこと
で、初めての投稿は最近色んな意味でハマりつつあるElixirでループさせてみることにしました。
いろいろな書き方があると思いますがまずは永久ループさせてみることに。
環境
OS: macOS High Sierra 10.13.6
Elixir: % brew install elixir
でインストール
% iex --version
Erlang/OTP 21 [erts-10.0.8] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] [dtrace]
IEx 1.7.3 (compiled with Erlang/OTP 21)
解説
countから開始してcount_upだけ増分、sleep_msecミリ秒だけスリープを繰り返します。
loop.exs
defmodule Qiita do
def loop(count, count_up, sleep_msec) do
IO.puts "count => #{count}, count_up => #{count_up}"
:timer.sleep(sleep_msec)
count = count + count_up
loop(count, count_up, sleep_msec)
end
end
Qiita.loop(0, 1, 1000)
まとめ
ループはサクッとできたき個人的にはElixirにも馴染んできたのかなぁと実感できたのと、sleepのやり方を調べて実装できたのが収穫