I wonder if it’s worth writing a different rotation implementation that calls through to a stream listener rather than returning a new array. For example:

```js
var transform = new d3_geo_transform(stream);
transform.point = function(λ, φ) {
  stream.point((λ += δλ) > π ? λ - 2 * π : λ < -π ? λ + 2 * π, φ);
};
return transform;
```

We could rewrite all the projections to do this, too, of course, but that’s a lot more difficult since the projection API is public. And it’s only worth doing this if it’s faster on the benchmarks.