I'm wondering why Future doesn't defer attempToFulfill
to reduce the cost when initializing.
In the following example, the console will print "Hi" even there is no subscriber is sinking values.
import Combine
let future = Future<Int, Never> { _ in print("Hi") }
I think Future type should start resolving a result for subscribers only when they request(_ demand:)
and the requested demand is greater than zero. Then we don't need to pay the cost for generating a future object.