So far, all we have done is create a hierarchy of related concepts. With that limited knowledge, we can still define some functions to model behaviors. But how is this useful when we have no concrete data elements? When dealing with abstract types, we could just focus on specific behavior and the possible interaction between them. Let's continue with the example and see what kinds of function we can add.