Elixir 練習問題 Functions-4

Elixir では、関数を返す関数を書くことができる。しかも、返ってくる関数はそれが定義された元の環境を覚えている。つまりクロージャだ。
というわけで、練習問題をやってみよう。

iex(1)> prefix = fn a -> (fn b -> a <> " " <> b end) end
#Function<6.52032458/1 in :erl_eval.expr/5>
iex(2)> mrs = prefix.("Mrs")
#Function<6.52032458/1 in :erl_eval.expr/5>
iex(3)> mrs.("Smith")
"Mrs Smith"
iex(4)> prefix.("Elixir").("Rocks")
"Elixir Rocks"

「Elixir 練習問題 Functions-4」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください