in reply to Check for another program availability

Second IPC::Run can_run(), which is in core.

But if you really want to iterate over PATH, core module File::Spec has a path() that returns the components of PATH or the OS equivalent. It handles Windows (split on /;/<code> not <code>/:/) and I believe even VMS (SYS$PATH or something similar, not PATH).

Replies are listed 'Best First'.
Re^2: Check for another program availability
by marto (Cardinal) on Apr 11, 2021 at 13:51 UTC

    IPC::Run isn't core, and does not have a can_run method. I think you've confused this with IPC::Cmd which is, and does.