in reply to SIGCHLD not properly defined

One idea is not to use the unreliable SIGCHLD. I have some code in a few of my columns that simply polls at opportune points in the top level loop looking for any kids that have died on the previous round.

With your code (which you dutifully copied from someone who also didn't have this same clue), you will crash sooner or later, or miss a kid until the next kid dies. Just take your while loop out and put it into the top loop of your program, and ignore the "signal handler" concept entirely. Or use Event or POE, which have taken this out into the proper realm.

-- Randal L. Schwartz, Perl hacker