[Pharo-project] RE : Re: RE : RE : NewClassOrganizer
Cami, A general ordering of standard (so to speak) protocols would be nice indeed. But what about pretty local protocols? Like things in PetitParser for example. Alphabetical would be a nuisance. Philippe Back Camillo Bruni <camillobruni@gmail.com> a écrit : On 2012-09-09, at 13:39, GOUBIER Thierry <thierry.goubier@cea.fr> wrote:
You are a very directive kind of person, when it comes to thoses things... If a user want it classified his way, who am I to change his ordering ?
You got me wrong there, I am talking about a user defined / preference dict. It's like choosing your preferred font. Of course this solution is very simplistic only holding up to a single global order. The other solution might be to simply replace the Dictionary in the new class organizer by something like an OrderedKeyDictionary plus a Nautilus plugin, DONE If you want my very personal opinion, I think it's not really helpful to have anything but alphabetic sorting. I use the new shortcuts in 2.0 to simply jump to the category I want, that saves me some couple of 100ms visual perception time on each selection.
No, the solution isn't yet another level of ill-defined "pattern matching" to try to get that result. Smalltalk has, from the beginning, been able to show good practice by letting it's developpers set well though-out conventions themselves, and by giving them the freedom to do so (maybe not consciously in some cases, but still). Regressing on that isn't good. Well, I personnaly will rebuilt yet another RPackage like system to get what I need, obviously.
I don't see any problem there.
By the way, have you noticed that on some systems, Pharo 2.0 starts to feel slow to use ?
in regard to what? I would say if you do a DeltaSlowness / AddedFeaturesIn2.0 you end up with something close to 0...
On 2012-09-09, at 13:58, Philippe Back <philippe.back@gmail.com> wrote:
Cami,
A general ordering of standard (so to speak) protocols would be nice indeed.
But what about pretty local protocols? Like things in PetitParser for example. Alphabetical would be a nuisance.
I'd prefer something like tags on methods to properly denote this information. But true, ordering might help for readability... I am just no big fan of all this implicit stuff, that's why I say this goes into the UI where you properly tell the user what the ordering means (by say bars telling "private" or so...) anyways, with the new class organizer it should be pretty easy to switch between different kinds of representation since we will use real collections and not some half-dict-half-array breed.
I think overall you're right about the implicit ... let's add a public and a private keyword to Pharo and enforce it :( I like to browse through existing code and see a long list of categories, carefully ordered from extensions all the way down to half a dosen private protocols, and recognize the care in which the author has organized and documented his code for my own, unimportant, benefit. As a aside, one of the aspect I like about RPackage is that it has the ability to accept multiple protocols as extensions, since it is not really tracking protocols, but methods directly. After, I also noticed that MC was able too, which would allow for documenting by using multiple protocols for large extensions sets such as RPackageOrganizer *Rpackage-SystemIntegration. So far, at the GUI level, I'm not making use of that :( Thanks for considering my wishes for the new ClassOrganization. Thierry ________________________________________ De : pharo-project-bounces@lists.gforge.inria.fr [pharo-project-bounces@lists.gforge.inria.fr] de la part de Camillo Bruni [camillobruni@gmail.com] Date d'envoi : dimanche 9 septembre 2012 14:08 Ã : Pharo-project@lists.gforge.inria.fr Objet : Re: [Pharo-project] RE : Re: RE : RE : NewClassOrganizer On 2012-09-09, at 13:58, Philippe Back <philippe.back@gmail.com> wrote:
Cami,
A general ordering of standard (so to speak) protocols would be nice indeed.
But what about pretty local protocols? Like things in PetitParser for example. Alphabetical would be a nuisance.
I'd prefer something like tags on methods to properly denote this information. But true, ordering might help for readability... I am just no big fan of all this implicit stuff, that's why I say this goes into the UI where you properly tell the user what the ordering means (by say bars telling "private" or so...) anyways, with the new class organizer it should be pretty easy to switch between different kinds of representation since we will use real collections and not some half-dict-half-array breed.
participants (3)
-
Camillo Bruni -
GOUBIER Thierry -
Philippe Back