libera/#sicl - IRC Chatlog
Search
7:59:09
beach
But, let me emphasize this again: I am not interested in optimizations that may have little or no impact on overall performance, but that require more specialized code to maintain. In this case, the frequency of calls to ADJUST-ARRAY and CHANGE-CLASS would determine whether it would be worthwhile to consider such an optimization.
7:59:57
beach
Of course, if SICL is taken over by people with more energy and time than I have, they can do what they please, since this is free software.
8:08:23
beach
The 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:45
beach
First 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.
8:10:30
beach
With optimizations like the one suggested, objects would have to be locked for thread safety.