We can do better than line-buffered output
Summary
A blog post arguing that line buffering can be augmented with a deadline-driven flush to combine low-latency line output with high-throughput buffering. It discusses real-world examples (unzip, Python, glibc), and outlines a concrete approach using test-then-flush and a Nagle-like deadline flush to batch small writes without delaying user-visible lines.