[MLton-devel] New release of MLton: call-graphs
Stephen Weeks
MLton@mlton.org
Mon, 31 Mar 2003 14:44:45 -0800
> By the way, one suggestion I made went unnoticed in the subsequent
> discussion, which was for dotted lines to represent indirect calls.
>
> On Thu, 20 Mar 2003, Joe Hurd wrote:
>
> > In the situation with functions A -> B -> C, why would anyone ever
> > want to remove B with all of its edges? I think my ideal would be
> > for -graph '(not B)' to remove B but add a DOTTED line from A to C to
> > represent an indirect call.
>
> Is there a good reason to prefer removing nodes and their edges?
Not that I can think of. Your suggestion sounds like an excellent
idea. To spell it out a little more carefully, we will remove
mlprof's -ignore switch, and change the behavior of -graph to the
following.
-graph <exp> evaluates <exp> to a set of nodes S as before. The nodes
not in S are treated like they were -ignored: i.e., there is a dotted
edge from A to B iff A and B are in S and there is a path from A to B
of length >1 going only through nodes not in S.
One question is what to do in the case when there is both a path
through nodes that remain and a path through nodes that were removed.
Consider a graph with the following three edges.
A -> B -> C
A -> C
Suppose we call -graph '(not B)'. Then, should there be a solid edge
from A to C, a dotted edge from A to C, or both? According to the
definition I gave above, the answer is both.
-------------------------------------------------------
This SF.net email is sponsored by: ValueWeb:
Dedicated Hosting for just $79/mo with 500 GB of bandwidth!
No other company gives more support or power for your dedicated server
http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/
_______________________________________________
MLton-devel mailing list
MLton-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlton-devel