It's squawking about your strftime. In a new script, try just this:
use strict; use warnings; use POSIX qw(strftime); my ($m, $y) = strftime ("%b %Y", localtime) =~ m|(\S+)\s(\S+)|; print "$m $y";

That should get you further...

Update: