Module: Unsound::Composition

Defined in:
lib/unsound/composition.rb

Class Method Summary collapse

Class Method Details

.compose(g, f) ⇒ Proc

Compose two callables together

g(f(x)) == (g * f)(x)

Parameters:

  • g (#call)

    a lambda, proc, method, etc.

  • f (#call)

    a lambda, proc, method, etc.

Returns:

  • (Proc)


12
13
14
# File 'lib/unsound/composition.rb', line 12

def compose(g, f)
  ->(*args)  { g.call(f.call(*args)) }
end