One way to think about C_OBJECT is as an "alias." There's a master/single
copy somewhere and all other references are nothing but aliases/references.
Except when they're not. The OB Copy command is a way of explicitly cloning
an existing object so that now you have two distinct copies.

Is that potentially confusing? Can it lead to hard-to-figure-out bugs? Yes
and yes. Is it a reasonable thing to do in a language? Most every language
that I've ever looked at thinks so, so why not 4D? But it does take keeping
things clear in your head. The simplest approach is to figure out a few
patterns that work consistently in a way that you understand and then try
and get into more nuance. Otherwise, references can behave in ways very
like badly used globals. Very easily. (Change something here and then
unexpectedly other stuff changes. Unless it doesn't.)

As Jeff pointed out, lacking comprehensive official documentation, relying
on nuance is probably foolhardy anyway.

But, again, 4D *officially* ignores this list. (To the point of not
mentioning their excellent blog posts or tech notes, as far as I can tell),
so don't expect answers here. Post on the forums and see how it goes. But
please post back here for those of us that aren't using the forums.
**********************************************************************
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:[email protected]
**********************************************************************

Reply via email to