included discussion about primitive types