Because it seems exceedingly odd to me to call `read_at_least(buf, n)` and have it read zero times.