Differentiation of Categories and Types