are there any official “1:M” type constructs in core.async? I find myself needing to sometimes do something like
(fn [x ch] (async/onto-chan! ch (some-transform x)))
Where (some-transform) may have a different shape from xmerge and into exist too
So I use core.async/pipeline-async for this, but it feels awkward enough that I wonder if I am doing something suboptimally