Design Goal for Constructor and Selectors:
The user of the constructor and selector
operations should not have to know the
details of the package representation.
To meet this goal, we practice data abstraction, that is, we strictly
separate:
- How data is used, and
- How data is represented