Section 8 of the yellow paper says as follows:
In the case of executing a message call, several parameters are required: sender (s), transaction originator (o), recipient (r), the account whose code is to be executed (c, usually the same as recipient)...
Under what conditions would r and c differ? In other words, when would code be executed from an account other than the recipient?
EDIT:
I have seen in the Bytecode spec (Appendix H) that there is a DELEGATECODE instruction that explicitly does this, i.e. calls code from account a against account b. In what contexts is this useful?