in reply to Scheduling a shell script to run every wednesday at 10 AM with perl without cron
You could use Algorithm::Cron combined with either a while(1) loop or an IO::Async::Timer::Periodic to check if the cron is ready to fire. But it is always better to use cron for this sort of thing when you can.