[Ruby] Rubyで関数合成できるLambdaDriverがかっこよすぎる はてなブックマーク - [ruby] Rubyで関数合成できるLambdaDriverがかっこよすぎる

Rubyで関数合成できると便利なのになぁという場面に出くわして、以前に見て知っていたけど試したことはなかったLambdaDriverを触ってみた。

( ꒪⌓꒪) ゆるよろ日記 – Rubyで関数合成とかしたいので lambda_driver.gem というのを作った

install

gem install lambda_driver

サンプル

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
require 'lambda_driver'

add_hoge = lambda{|x| x + "hoge"}
add_fuga = lambda{|x| x + "fuga"}

# >>で合成
add_hoge_fuga = add_hoge >> add_fuga
# < で実行(callの別名)
add_hoge_fuga < "piyo"
=> "piyohogefuga"

# <<で逆順で合成
add_fuga_hoge = add_hoge << add_fuga
add_fuga_hoge < "piyo"
=> "piyofugahoge"

かっこよすぎるやろ!でも仕事のコードで使ったら顰蹙物だろうなぁ。


Comments