print compose( $f,$f,$f,$f,$f,$f,$g )->("x"); # f(f(f(f(f(f(g(x))))))) my $add1 = sub { $_[0] + 1 }; my $add2 = compose( $add1, $add1 ); my $add4 = compose( $add2, $add2 ); print $add2->(0); # 2 print $add4->(0); # 4 print compose( $add1, $add1, $add1 )->(0); # 3 print compose( ($add1) x 4 )->(0); # 4