generated at
Haskellのラムダ式
\ って、「\lambda」っぽいよね、的な
関数の引数を右辺で定義する
hs
inc :: Int -> Int -- 型注釈は同じ inc x = x + 1 -- 通常の関数定義 inc = \x -> x + 1 -- ラムダ式
二引数の場合
hs
add :: Int -> Int -> Int add x y = x + y add = \x -> \y -> x + y add = \x y -> x + y
ラムダ式は無名関数
それを変数に束縛している

うれしいこと
一度しか使わない関数に名前をつけずに済む
hs
main = do print $ (\x -> x + 1) 1 -- 変数に束縛せずにラムダ式をそのまま実行