[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] RE: Automation & algebra lattice
From: |
root |
Subject: |
Re: [Axiom-developer] RE: Automation & algebra lattice |
Date: |
Sun, 24 Aug 2003 21:57:28 -0400 |
well, several comments.
perhaps if they made aisee open source we could fix the bugs.
the difference between the makefile lattice and the full graph
can be discovered by compiling the bootstrap domains as spad
files (use notangle to extract the spad code, not the bootstrap
code). Since you already have a running axiom with running algebra
the bootstrap domains should compile cleanly. Save the console
file from each compile, collect all of the Loading messages,
strip out their domains, and find out where the bootstrap files
occur in the lattice. In particular, find out where they occur
without the bootstrap files. Once you've successfully classified
the bootstrap domains you no longer need the bootstrap layer of
the lattice (and, in fact, it shouldn't be there any longer since
each domain in the bootstrap appears elsewhere in the graph).
as to the "two paper lattice layout algorithm" I mentioned earlier:
there is a subtle case that happens when you try to place two files
at the same lattice level in the plane. don't know if I can explain
this without pictures. suppose C depends on A and B. supposed D
depends on A and B. if you start the process and put A and B on the
bottom line at the same level you see:
A B
then you add C
C -- layer 1 line
/ \
/ \
/ \
A B -- layer 0 line
Now if you add D at the same "height" as C it can appear to the left
of C or the right of C.
D C -- layer 1 line
/ \
/ \
/ \
A B -- layer 0 line
In either case when you try to link D with A and B you are forced to
have a pair of lines that cross. However, if the same "height" is an
area rather than a line you can add "slightly" above C:
D --
> layer 1 "area"
C --
/ \
/ \
/ \
A B -- layer 0 line
and now it is possible to draw non-intersecting lines from D to A and B.
So the problem gets more complex if you allow an "area" for laying out
a single lattice level.
Tim