A generic formal parameter can be an object; alternatively (unlike a parameter of a subprogram), it can be a type or a subprogram.