eval { weather_subroutine(); } or do { warn $@; }; # <-- Note trailing semicolon; it *does* matter