# get first of next month: my @first_of_next_month = Add_Delta_YM((Today)[0,1], 1, 0, 1); # get day of week my $dow = Day_of_Week(@first_of_next_month); # if it's 1..5, then use it, else move forward: my @first_weekday_of_next_month = Add_Delta_Days(@first_of_next_month, $dow == 7 ? 1 : $dow == 6 ? 2 : 0);