mark@apple.com (mark lentczner) (03/09/89)
Hiho- I finally broke down and bought Smalltalk/V Mac this past week! I couldn't stand to use the Apple Version 1 System (which I worked on at Apple) anymore: no user extendible primatives, not multifinder compatible, etc. Ok, so I get it home and, what?!?!?, no class or method organizations! OK, OK, so I spent last night adding them. WOW! That is the easiest variation of a browser I've ever created with Smalltalk. (I know I know all you with Version 2 and pluggable views are used to this kind of stuff, but those of us with old Version 1 MVC aren't.) So now the questions: 1) There is a problem that new code with organizations will not file into systems without them. I can fix this by supplying two methods that get filed into those systems that drop the organization info from the file-in. (Assuming the target system doesn't want organizations.) Does this sound reasonable or does anyone else have a better idea? 2) My organizations differ from the classic Smalltalk-80 ones in two respects: they are always sorted by group name (ST-80s are in the order you put them) and methods and classes can appear in more than one group! This seems like a win for classes: One can include them in several places if it makes sense. Any comments on this? I will happy to share the code once it's done (or at least close to done :-) -mark l.
tce@ann.UUCP (Thomas C. Evans) (03/18/89)
In article <878@internal.Apple.COM> mark@apple.com (mark lentczner) writes: > >So now the questions: >1) There is a problem that new code with organizations will not file into >systems without them. I can fix this by supplying two methods that get >filed into those systems that drop the organization info from the file-in. >(Assuming the target system doesn't want organizations.) Does this sound >reasonable or does anyone else have a better idea? > >2) My organizations differ from the classic Smalltalk-80 ones in two >respects: they are always sorted by group name (ST-80s are in the order >you put them) and methods and classes can appear in more than one >group! This seems like a win for classes: One can include them in >several places if it makes sense. Any comments on this? That all sounds like a good start at building better than PPS tools into ST/V. If your new code must be filedOut with catagories how do I file It in in the first place? Could you modify fileOut so that the organization information is optional? Getting better tools and staying compatible would be best of both. I like what you did with class catagories. As far as method catagories are concerned, the organization (as a comment) is part of the encapsulation of the language. A method in catagory PRIVATE is the only way the language/system has to hide behaivor. Consider creating a few default catagories when ever a new class is defined. They could be: Instance Class private private initialization initialization instance creation reporting core interface Be talking to you.. Tom