It was a long road, but I finally found the problem. Haiku's minimum stack size recently got increased, but posix/limits.h never got its minimum pthread stack adjusted to match. As ruby uses this for its timer thread, it would always die. I've submitted a ticket (#9959). (Turns out there's a bug in ruby's error reporting too, that causes a hang on a continuous segment violation. This happens even on older haikus, but I guess I just never hit the bug report function before!) -- Pete --