Unbuffered stdout makes stdout and stderr better synchronised, and helps when stepping through code in a debugger (prints are immediately visible). We don't output much to stdout anyway, so this isn't likely to cause any performance issues.