A narrowing conversion is one that converts an object to a type that cannot include all of the values of the original type
A widening conversion is one in which an object is converted to a type that can include at least approximations to all of the values of the original type
A mixed-mode expression is one that has operands of different types