Stephen Pope wrote > When I fire up Pharo, the system browser presents me with a list of > several hundred categories (from AST to Zodiac) in a system with over 8000 > classes. The system categorization makes no sense since I don’t know the > naming conventions and so many packages have cute but quite > non-descriptive names (Zinc? Metacello? Calypso?).
Even after using Pharo (and this probably applies somewhat to current Squeak too, but I haven't opened an image in a while so forgive me if I'm wrong) for over a decade, I still feel your pain on this issue! The problem IMHO is the ugly Monticello SCM hack hijacking *logical* categories to use for packaging, which is an orthogonal concern. Here is a a fuller description from a previous thread [1]: Sean P. DeNigris wrote >> we have overloaded system categories to package code for SCM. System >> categories should be tags (preferably multiple allowed) >> which offer a logical view of the system. Packages, the POV we show now, >> are orthogonal and much less useful for users. > (edited) > and another: >> I feel more and more that the standard "Package" pane is only useful >> for... packaging, and when one takes off the dependency management hat >> and >> puts the user hat on (i.e. most of the time), what you really want there >> is a logical view of the system. So I see three use cases: > - Logical view of the system - I guess this was the original intention of > Categories, but has been hijacked by Monticello > - By project - which, as you just showed, we have now, yay! > - By package - the least useful, but primary (up til now), view > (edited) > and regarding Nautilus' tree package pane (when it first arrived): > I noticed that right now, separate packages within the same project are > not > collapsed. E.g. if I have MyProject-Core and MyProject-Platform, they will > be siblings in the tree, instead of both under MyProject. It seems like it > would be more useful to have > - MyProject > - Core > - Platform > in the tree > >> it seems that the tree is primarily about chunking information into >> manageable pieces. > > A primary difficulty here is that packages are often divided for reasons > that have nothing to do with the domain model, e.g. the ubiquitous > MyPackage-Platform, which is an artifact of Metacello that is not all that > relevant to a user wanting to understand the system. > > From the naive user perspective, if I'm exploring from the top level of > the > system, I want to see things like: > - CodeImport > - Collections > - Compiler > > From this perspective, the 14 entries for Collections, multiplied by a few > dozen top-level categories make the list unwieldy and only marginally less > daunting than the flattened list we used to have (see > http://en.wikipedia.org/wiki/The_Magical_Number_Seven,_Plus_or_Minus_Two ) 1. http://forum.world.st/Why-can-t-we-use-in-protocol-for-package-extension-tp5073597p5073663.html ----- Cheers, Sean -- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html