sub compose2 { my ($f, $g) = @_; sub { $f->( $g->(@_) ) } }