8:06:40beachHowever, this optimization would also not be thread safe.
8:08:23beachThe way to alter the structure of a rack in SICL (with CHANGE-CLASS or ADJUST-ARRAY) is done in two steps. First a copy is made of the original rack, if necessary. Then CAS is used to install the rack, provided the old rack is what it was when the operation started.
8:09:45beachFirst a copy is made of the original rack, if necessary. Then, a new rack is created an initialized, if necessary (i.e. if the copy is not made or it won't work). Finally CAS is used.