[squeak-dev] Towards SqueakCore

Frank Shearar frank.shearar at gmail.com
Tue Feb 12 14:28:44 UTC 2013


On 12 February 2013 13:54, Tobias Pape <Das.Linux at gmx.de> wrote:
>
> [Re-send because of message size]
> Dear all,
>
> Am 10.02.2013 um 00:51 schrieb Frank Shearar <frank.shearar at gmail.com>:
>
>
> In the interests of revisiting Pavel Krivanek's work, and a long term
> goal of this community, I thought I'd use the Dependency Browser and
> dig out interpackage dependencies.
>
> By scraping the DependencyBrowser's contents together with a bit of UI
> scripting I've constructed a dotfile of Trunk (attached). Turning this
> into a PNG results in an 11MB image! [1] Nodes near the top are nodes
> that aren't used by many things.
>
>
>
> So I played around with the data a bit.

Wow, thanks Tobias! Great stuff!

> I ran the dot file through tred (part of graphviz), to eliminate dependencies that are
> already satisfied through transitive relations. (deps-simplified)
> It turns out we have many cycles, and tred complaints about:
> cycle involves edge Files -> System
>
> I then used cluster (also part of graphviz) to identify clusters in the
> dependency graph (found three around Kernel, Collections, and Tests)
> (deps-simplified-reclustered) and manually added a "morphic" and a "HelpSystem"
> cluster (deps-simplified-reclustered-manucluster)
>
> Note the big circle from System over ST80 to Morphic and from there via Ballon/Collections
> back to System, or via Monticello/Kernel/Collection back to System.

That's one circle we'd want to lose. I think we can break that just by
moving MailComposition >> #addAttachment to Tools (thus breaking
Network's usage of Tools).

(There might be a bunch of things to do, but that's definitely a
dependency we want to break.)

> Apart from that, note a direct circl (MonticelloMocks<->Tests) but also a small
> indirect circles (System->Environments->Compiler->System).
>
>
>
> If we aim for modularity, we should invest time to investigate those circles.

Some of those circles we may never resolve. Craig Latta might have
some insight here, because he had to deal with these issues in the
creation of his micro-images.

Craig?

frank

> Best
> -Tobias
> [Find the formerly attached zip at http://netshed.de/trunk-deps.zip ]
>
>
>
>


More information about the Squeak-dev mailing list