The current wording of connect(sndr, rcvr) defines the new_sndr expression as transform_sender(decltype(get-domain-late(sndr, get_env(rcvr))){}, sndr, get_env(rcvr)).
It then defines connect(sndr, rcvr) as expression equivalent to new_sndr.connect(rcvr).
As currently worded, this requires evaluating the rcvr expression twice. Note that the first usage in the new_sndr expression is unevaluated, but the second usage in get_env(rcvr) is evaluated.
I think we need to add an extra sentence at the end of this section saying "Where the expression rcvr is only evaluated once." or similar.
The current wording of
connect(sndr, rcvr)defines thenew_sndrexpression astransform_sender(decltype(get-domain-late(sndr, get_env(rcvr))){}, sndr, get_env(rcvr)).It then defines
connect(sndr, rcvr)as expression equivalent tonew_sndr.connect(rcvr).As currently worded, this requires evaluating the
rcvrexpression twice. Note that the first usage in thenew_sndrexpression is unevaluated, but the second usage inget_env(rcvr)is evaluated.I think we need to add an extra sentence at the end of this section saying "Where the expression
rcvris only evaluated once." or similar.