Ruby2.6 に関数合成オペレータが追加されたのでFizzBuzzで遊ぶ

fizzbuzz = -> x { x % 15 == 0 ? 'FizzBuzz' : x % 5 == 0 ? 'Buzz' : x % 3 == 0 ? 'Fizz' : x } p_fizzbuzz = -> x { p x } << fizzbuzz 1.upto(15){ | n | p_fizzbuzz.call(n) } pと合成するだけでは面白くないですね。 fizz = -> x { (x.is_a? Integer) && x % 3 == 0 ? 'Fizz' : x } buzz = -> x { (x.is_a? Integer…