[squeak-dev] Re: Package Hierarchy Map

David T. Lewis lewis at mail.msen.com
Fri Jul 26 18:11:35 UTC 2013


On Fri, Jul 26, 2013 at 11:28:52AM -0500, Chris Muller wrote:
> Damn formatting -- and why can't I use a Tab character in an e-mail?!  Geesh!
> 
> Here's the hierarchy which will hopefully not be reformatted by Gmail:
> 
> Morphic
> (and everything else)
>      ST80
>           Tools
>                System
>                Balloon
>                     Graphics
>                     Multilingual
>                          Kernel
>                               Collections
>                                    Exceptions
> 
> And now the responsibility / capabilities descriptions:
> 
> Morphic -- UI framework
> ST80 -- Not sure about this one.

"ST80" is the MVC UI framework, in the same sense that "Morphic" is the
Morphic UI framework. I'm sure that ST80 started out as a general category
of all the stuff that originated in ST80, but as a practical matter, nowadays
it refers to MVC. An MVC user interface is hosted in an MVCProject, just
as a Morphic user interface is hosted in a MorphicProject.

Dave

> Tools -- Domain models that describe and operate tool windows.
> System -- catch-all for System'y things.
> Balloon -- Graphics framework.
> Graphics -- Things related to graphical output.
> Multilingual -- Things related to internationalization.
> Kernel -- Lowest-level things besides collections and error-handling.
> Collections -- collections.
> Exceptions -- Error-handling things.
> 
> On Fri, Jul 26, 2013 at 11:25 AM, Chris Muller <ma.chris.m at gmail.com> wrote:
> > One thing that might help us sort methods and organize methods into
> > packages is try to decide what we think the responsibilities of those
> > packages are.  Here is a suggested hierarchy where the most-indented
> > are the lowest level packages and the most outdented are the highest
> > level packages.
> >
> > I might be helpful to be driven by where we think, *semantically*, the
> > behaviors you're moving around belong rather than being driven by "any
> > place but here because it creates a cycle".
> >
> > It probably won't be possible to eliminate the cycles between the
> > three lowest-level packages, but hopefully from the ones above that.
> >
> > Morphic
> > (and everything else)
> >      ST80 -- Not sure about this one, but seems like it should be
> > "legacy" Smalltalk stuff rather than low-level stuff.
> >           Tools -- Domain models that describe and operate tool windows.
> >                System -- catch-all for System'y things.  Does not
> > include any tool-windows.
> >                Balloon -- Graphics framework.
> >                     Graphics -- Things related to graphical output.
> > Bit-blitting and canvas stuff.  NOT Morphic stuff.
> >                     Multilingual -- Things related to internationalization.
> >                          Kernel -- Lowest-level things besides
> > collections and error-handling.
> >                               Collections -- collections.
> >                                    Exceptions -- Error-handling things.
> >
> > Thoughts?


More information about the Squeak-dev mailing list