5.1.3 Treatment of Other Macros Based on SETF

For each of the "read-modify-write" operators in the next figure,
and for any additional macros
defined by the programmer using define-modify-macro,
an exception is made to the normal rule of left-to-right evaluation of arguments.
Evaluation of argumentforms occurs in left-to-right order,
with the exception that for the placeargument, the actual
read of the "old value" from that place happens
after all of the argumentformevaluations,
and just before a "new value" is computed and written back into the place.

Specifically, each of these operators can be viewed as involving a
form with the following general syntax: