just for education purpose.... yes it was like that delete model isMorphicModel ifFalse: [^ super delete]. slotName ifNotNil: [(self confirm: 'Shall I remove the slot "' translated , slotName , '"\along with all associated methods?' withCRs translated) ifTrue: [(model class selectors select: [:s | s beginsWith: slotName]) do: [:s | model class removeSelector: s]. (model class instVarNames includes: slotName) ifTrue: [model class removeInstVarNamed: slotName]] ifFalse: [(self confirm: '...but should I at least dismiss this morph?' translated , ('\' , 'Choose "No" to leave everything unchanged' translated) withCRs) ifFalse: [^ self]]]. super delete and we turn it into delete model isMorphicModel ifFalse: [^ super delete]. instead of delete model isMorphicModel ifFalse: [^ super delete]. super delete -> deleting delete