in reply to Beep.pm

I like this. It gives me an easy way to audibly signal different errors. I see just 1 small glitch. On my suse linux system , and probably many other linux systems, beep is a predefined shell function. I got around it by changing the name of the c program to beepme, but it's something to consider. Maybe in your beep.pm where you take the backtick on beep, you could specify the full path, /usr/bin/beep ?