SE-0289: Function Builders

Something like this that uses an instance builder object to accumulate the values. There’s a few subtle difference, and I won’t bother digging and listing them all, but the main idea is that instead grouping the whole block via buildBlock, we accumulate data from top-to-bottom. That’s the only different broad stroke I can recall (and you already list the receiver closure approach).

I’m just asking anyway if you have any simpler alternative you’d like to discuss, since it seems you already assume its existence.