What is the meaning of a type? How would you characterize the relation between a type and its subtypes? Characterize the subtyping rules for ranges, functions, records and variant records. Give some example. What is the intuition underlying the function subtyping rule? What is understood by the notion of objects as records? Explain the subtyping rule for objects.