Understanding dual (noncommutative) modules / vector spaces functorially For vector spaces over a fixed field $\Bbbk$, there's a natural transformation from the identity functor to the double dual functor. I think here's a way to construct it. Start from the identity arrow $1_{V^\ast}$. The counit of the tensor-hom adjunction sends it to $\mathrm{eval}_V:V^\ast \otimes V\rightarrow \Bbbk$ which is defined by $\mathrm{eval}(m):f\mapsto f(m)$. Now since $\otimes $ is symmetric for vector spaces, we can identify the evaluation natural with the evaluation on $M\otimes M^\ast$, defined in the same manner. Now if we take the adjunct of this map along the unit of adjunction, we get a map $$\phi_V:V\rightarrow \mathsf{hom}(V^\ast,\Bbbk)=V^{\ast\ast}$$ defined by $$\phi_V(v):f\mapsto f(v)$$
Now, for a left module $M$ over a noncummutative ring $R$, we still define $M^\ast=\mathsf{hom}(M,R)$ and find it is a right $R$-module. We still use the map $\phi_M(m):f\mapsto f(m)$. However, the tensor product is no longer symmetric, so...
How to get $\phi:1\Rightarrow (-)^{\ast\ast}$ from the tensor hom adjunction for modules over noncommutative rings? 
 A: You need to set up the correct hom–tensor adjunction. Recall that, for rings $R, S, T$, an $(R, S)$-bimodule $M$, $(S, T)$-bimodule $N$, and $(R, T)$-bimodule $P$, we have:
$$\mathrm{Hom}_{(R, T)} (M \otimes_S N, P) \cong \mathrm{Hom}_{(R, S)} (M, \mathrm{Hom}_{(\mathbb{Z}, T)} (N, P))$$
$$\mathrm{Hom}_{(R, T)} (M \otimes_S N, P) \cong \mathrm{Hom}_{(S, T)} (N, \mathrm{Hom}_{(R, \mathbb{Z})} (M, P))$$
In particular, if we take $R = T$, $S = \mathbb{Z}$, and $P = R$, we get
$$\mathrm{Hom}_{(R, \mathbb{Z})} (M, \mathrm{Hom}_{(\mathbb{Z}, R)} (N, R)) \cong \mathrm{Hom}_{(\mathbb{Z}, R)} (N, \mathrm{Hom}_{(R, \mathbb{Z})} (M, R))$$
and taking $N = \mathrm{Hom}_{(R, \mathbb{Z})} (M, R)$, this yields a natural $(R, \mathbb{Z})$-bimodule homomorphism
$$M \to \mathrm{Hom}_{(\mathbb{Z}, R)} (\mathrm{Hom}_{(R, \mathbb{Z})} (M, R), R)$$
as desired. Note that we use two different hom functors here!
Of course, we can do all this in the non-additive / many-object setting as well, which leads to the notion of Isbell conjugation.
