I'm trying to get a deeper intuition about natural transformations. More specifically, I'm trying to port the concepts of Category Theory to programming (Julia programming in this case, which requires more implementation of the concepts than a more Functional Programming language).
I have been able to implement and get an understanding of functors. Now I'm trying to do the same for natural transformations. In programming, our functors are endofunctors acting on the same category (e.g. $\mathbf{Prog}(Julia))$.
My questions is if there is always a natural transformation between any two endofunctors. More formally, given a locally small category $\mathcal C$, and two endofunctor $F,G:\mathcal C \to \mathcal C$, is there always a natural transformation $\alpha: F \to G$?
My intuition tells me this is not true.
No. Consider the discrete category $C$ with two objects $x$ and $y$, let $F$ be the constant endofunctor sending both objects to $x$, and let $G$ be the constant endofunctor sending both objects to $y$. Then there is no natural transformation from $F$ to $G$.