"Leslie P. Polzer" <[email protected]> writes:
>   * address data is missing indeed (never noticed it before) with
> latest but shows up in 58878d.
>
> Stephen, might your changes to the view field inheritance system (or
> my changes that you've been overriding) be responsible for that?

Yes, it's in factor-overridden-fields, and here is the problem.

To simulate the <=980bccf ordering, we prefer the item that appears
later in the list, but for it to *appear* at the earliest position that
key appears.  We do this by walking backwards and carrying the item to
each new earlier position, overwriting the earlier item and filling the
later position with NIL (to be removed later).

However, we also always prefer the latest *true* inline.  A true inline
doesn't come from a mixin (we discussed this in an earlier thread; the
later get-object-view-fields tests are especially interesting), but
can come from the inherit-from sequence.  It is also not a mixin field
itself.  I don't know why this wasn't an issue before, probably
something to do with the (intentionally removed) repeated intermixing of
mixin/sort/inherit/sort actions.  Now we do
inherit/sort/inherit+mixin/sort, strictly 4 steps.

Anyway, as you can see, the correct behavior in this case is to replace
the `address' mixin-view-field with the `address' scaffold field,
because the latter is true-inline (see test
`get-object-view-fields.direct-shadow-proper-mixin').  At the moment FOF
does the wrong thing when presented when a non-true-inline of a name
appears after a true-inline of a name, but the real question is how do
we maintain the primacy of true-inline fields versus mixins while also
allowing mixin-parameterization of inherited true-inlines?

If you want a quick workaround, rename the mixin slot, hide the
original, and use a reader.  On this subject in general, I think we'll
need to rethink the way field primacy is defined, and possibly
reconsider field sorting more thoroughly.

-- 
Sorry but you say Nibiru is a Hoax?  Doesnt Exist?  So maybe The
Sumerian people doesnt exist also! --Anonymous by way of SkI

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"weblocks" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/weblocks?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to