use strict; use Hook::LexWrap; sub some_sub{ print "@_"; } sub before{ # inject a new arg unshift @_, 'new arg'; return \@_; } wrap some_sub, pre => \&before; some_sub(1,2,3);