"it is a design flaw" "Being forced to have strong references ... " "makes it impossible to just include some documentation" "This doesn't encourage me at all" "..."
So many negative statements in one post, look like you had a bad day today ;)
Not really, I was just trying to load a package with help into an image without the HelpSystem loaded. *boom* I thought I could give some feedback before it got adapted more widely. We had exactly the same discussion with the menu and settings system a few months back.
 a) If you want to provide API help (reference docu)    you DONT HAVE ANY reference or dependency since you can comment your    classes and methods in the usual Smalltalk way using class/method    comments.    No need for "HelpSystem-Core" to be around, NO REFERENCES,    and NO EXCUSE NOT TO document your code ;)
Status quo, yes. I see documentation more exposed through the HelpSystem browser though, which i found a really nice way to browse documentation.
   Would you call it a design flaw of SUnit to create tests    by subclassing the class "TestCase" so that it is known to    the system as test case and also shows up in the TestRunner?
Yes, absolutely. Any other unit testing framework in the world does not force you to subclass from a common superclass when writing tests.
 4. By using pragmas (loose coupling) you have to deal   with the problem that by your parent topic may not be   there/not be loaded since it can be defined somewhere else   in the class hierarchy.
I would not make the books extensible themselves, that complicates things and is rarely needed in practice. The exact same problem is solved in the settings system quite nicely.
So I was pragmatic and used Plain old Smalltalk classes and method to define the books (POSCAM).
It doesn't have to be pragmas (although I think it should). It could also just be a class side method #buildHelpOn: that is called when opening the browser and that gives each class the possibility to add some documentation. I am just saying that I am not going to create an extra package just for the sake of documentation. Documentation is really crucial and it needs to be super easy to create, otherwise it is simply not going to happen. Creating an extra package is complicated and doesn't give me any benefit as a developer, so very likely I am not going to do it. Lukas -- Lukas Renggli www.lukas-renggli.ch