[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]

scenario:



Date: Thu, 26 Oct 89 17:15:02 PDT
   From: heh (Hugh Hoover)

     Using a link waldo, I create a new link (ok, I ask cat_Link->make(...) to
   give me a waldo on a new link).
    2) using devious techniques (like hands&orgls level), I insert this link
   into document A, including it in the linkSpace, and the top handRecord as
   appropriate to create a properly formed link-embedded-in-a-document.
    3) using even more devious techniques (like hands&orgls level), I insert
   the >same< link into document B.

   Q.  What happens?, What does this mess up?

No.  It all works perfectly.  The multi-orgl representing the Link is
now in both documents.  As Orgls have no EQ-identity, and are side
effect free, it is meaningless to ask whether it is the same
multi-orgl in both places, or a copy.  The answer is yes.  If you're
instead talking about directly including the Link Waldo into the Doc
Waldo, instead of creating a new Waldo, this would totally break.

   (aside)
     The current Doc interface does not allow this, because it >copies< the link
   it is inserting, although I'm not sure there's a significant difference.
   --Hugh

As noted, the multi-orgl representing the link is caused to appear in
both places.  I do not believe a copy is going on at the
implementation level, but if you wish to regard it as a semantic copy,
you are free to do so.  The critical point is that the Docs&Links
interface (or more deviously, the SubHand&HandRecord interface) does
not allow insertion of the Link Waldo into the Doc Waldo.  Instead the
Waldo is copied.  This is necessary and appropriate.  If the Link
Waldo were directly embedded in the parent HandRecord (the Doc), what
would it mean?