ruby アロー演算子 ラムダ計算

「アロー演算子」と「ラムダ計算」


アロー演算子とは?


Rubyにおけるアロー演算子

->


は主にラムダ(無名関数)を定義するために使われます。

lambda = ->(引数){処理}


ラムダ計算とは?


ラムダ計算は、関数とその適用によって表現する概念です。
このラムダ計算の関数は常に無名関数で3つの基本操作によって構成されています。

1、関数の定義(抽象)
ラムダは引数を取り、何らかの処理を行う。

2、関数の適応(適用)
定義したラムダに対して引数を与えて処理を行う。

3、変数の置換(変数)
ラムダ内で仕様される変数は、そのスコープ内で有効となる。


ラムダ計算の基礎表現

rubyでのアロー演算子


num = -> (x){x*x}

p num[5]
結果=> 25
#違う呼び出し方
p num.(5)
p num.call 5
結果=> 
25
25

#引数複数
num = -> a,b{a*b}
p num[2,3]
結果=> 6

#引数なし
num =-> {"アロー演算子"}
p num[]
結果=> アロー演算子


rubyにもアロー関数ありました。
このアロー演算子とラムダ計算は、コードの柔軟性と表現力を高めるツールなのでぜひとも覚えておきたいですね。