#!/usr/bin/ruby
# https://rosettacode.org/wiki/Functional_Composition
func compose (f, g) {
func(n){ f(g(n)) }
}
func f(n) {
n / 64;
}
func g(n) {
n * 32;
}
var fg = compose(f, g); # fg(x) is equivalent with: f(g(x))
assert_eq(fg(4), 2);
say "** Test passed!";