Doesn’t that construction only work in categories that also contain their own morphisms as objects since a profunctor maps (Cᵒᵖ × C) → Set
and not the same like (Cᵒᵖ × C) → C
? Since the category of Haskell types special, containing its own morphisms, so the profunctor could be like (haskᵒᵖ × hask) -> hask
? or I just don’t understand it.
It’s probably fake news