[Setools] Code graphs, and Exploring browser

Balázs Kósi rebmekop at gmail.com
Sat Sep 23 20:49:45 UTC 2006


Hi all!

As i am trying to comprehend Gjallar and Seaside, i am also thinking about the
activity of code comprehension. Let me share some of my toughts about this, from
the aspect of tools:

The existing tools help the process of understanding code, via showing relations
between the entities:
 * methods sending the examined method's selector
 * implementors of a selector
 * methods referencing variables
 * entrie call stacks
 * object's holding other objects
 * object is instance of a class
 * class superclass relation
 * ...

When i try to understand some aspect of the code, i usually end up with lots of
browsers (and explorers, inspectors, workspaces, pointerfinders,
debuggers, ...),
which contains lots of unnecessary information, overlapping each other
and having
duplicates.

For me, it seems reasonable to build a visual graph from the relevant
entities (packages,
categories, classes, methods, variables, objects, comments, more?) as nodes,
connected by their relations. Basically i imagine the graph building
and layouting
as a semi-manual process, resembling BabySRE's collaboration diagram, but more
specific to smalltalk and more focused on code, more elaborate, and
somewhat more
automatic.I decided not to go into details. Please tell me about your
impressions.

One sidenote about the connection with documentation, and the Magic Book idea of
coupling doc with code:  With the created code graphs we could
illustrate documentation.
Moreover  the code graph could be (or would be) bound to a specific
version of code,
so you could use it to indicate how outdated the documentation is.

thanks: Balázs

ps: BabySRE can be installed via SqueakMap. It's written by Trygve
Reenskaug. respect.
 http://heim.ifi.uio.no/~trygver/


More information about the Setools mailing list