Hi! Related with the issue http://code.google.com/p/pharo/issues/detail?id=2757(Issue 2757 <http://code.google.com/p/pharo/issues/detail?id=2757>: Refactor StringHolder) I was looking at the StringHolder hierarchy, and well, it's not very nice. Playing to see how difficult should it be to refactor the hierarchy and decouple a bit those things, I took Workspace off from there, and writing 2 methods it happened to work well (at least with what I tested, hehe). Sooo, I wondered why a StringHolder, what responsibilities it has, and what ones should it have... I found that most of the messages a StringHolder understands are for browsing things and inspect things, such as the Paragraph editor does :). And that's why Workspace could do all his stuff when I made him inherit from Object... StringHolder class comment says: "I am a kind of Model that includes a piece of text. In some cases, the text can be edited, and in some the text is a method." And I smell that its main responsibility is to hold a Text or a String in its contents variable, and all its subclasses are there because of that... And if so, I don't like that inheritance approach :). I want to destroy (literally) that hierarchy :). And maybe it helps us in coming refactors and cleanings, so we can do them with less fear :P. Well, this mail is just for ask for advice and argue about the correctness of this change (or not). Thanks for reading up to here! Guille