A categorical view of covariance and contravariance in C++ · HackerTrans