Overall, I think shared slots are a bad idea. As discussed in a previous topic, defclass by itself doesn't provide very good encapsulation. Another gotcha is that reevaluating a defclass with a different value for the initform doesn't reinitialize the slot.