Which option for Windows?

A window doesn't require dynamically allocated storage. We could use either option.

Suppose we say W1=W2 and then MOVE_FORWARD(W2). Should this affect W1?

The copying option is extremely useful: W1=W2 allows you to keep a record of W2's point of origin before you begin moving it in search of some other element.

Summary of Considerations

4 major considerations in designing our implementation: