An additional note on the op-trick for other beginners:

The situation in my previous comment [#20](https://forum.azimuthproject.org/discussion/comment/19763/#Comment_19763) requires that the arrow direction in the **first** component of the product hom-functor be eventually reversed. There are two ways to do this:

**(i)** via a non-reversed arrow in the domain category (\$$\mathcal{C}\$$) plus a _contravariant_ hom-functor;

**(ii)** via an already-reversed arrow in the domain category plus a _covariant_ hom-functor, where the arrow reversing is done by the op-trick which changes the domain category from \$$\mathcal{C}\$$ to \$$\mathcal{C}^{op}\$$.

As such, in the notation \$$\mathcal{C}^{op} \times \mathcal{C} \to \mathbf{Set}\$$, both components of the product hom-functor are **covariant**. What we mean by saying "the first component is contravariant" is that its _effect_ needs to be contravariant, not the actual _functor_, at least in the op-trick notation, because if we simultaneously apply the op-trick and the contravariant functor we effectively reverse the normal \$$\mathcal{C}\$$-arrow direction _twice_ (which amounts to not reversing it at all)!

In _Categories for the Working Mathematician_ (p.34) Mac Lane describes this op-trick as **"[t]he contravariant hom-functor [...] written covariantly"**. On that note, I find Mac Lane's book surprisingly lucid on various points that have confused me.