Requirements of Views
- An abstract type is defined as an abstract record containing a set of
- Generic procedures are written in terms of the basis variables.
- A view type emulates the abstract record using the
concrete record as storage:
- storage property: after a value is stored into a basis
variable, a read of the basis variable returns the same value.
- independence property: storing into one basis variable does
not change the values of others.
- A store into a basis variable may require updating several concrete
- Slight inaccuracy in emulation may be allowed (e.g., floating point
round-off error in representing (x, y) using (r, &theta)).