[squeak-dev] Towards SqueakCore

Tobias Pape Das.Linux at gmx.de
Tue Feb 12 13:54:03 UTC 2013


[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.

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.
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.

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

-------------- next part --------------
Skipped content of type multipart/related


More information about the Squeak-dev mailing list