> My question about what specific relationships the equations you are
> interested in express, and my request for examples of such equations
> relating to record types (so I can get some idea of what you are after
> here) are not addressed by your response. In the absence of such
> information, my ability to respond helpfully is very limited.
>
My answer informally specified just that. Ideally, you want to specify
inequations that tell you how values flow around in an expression. Just
consider an application:
(f a)
for every lambda (lambda (x) b) that flows into f, we know that the value
of a flows into the parameter x:
a < x
and that the result of b is the result of (f a)
b < program-point-for(f a)
I am using a pun between meta-variables and program points here to avoid
unnecessary formalism.
With structures, you usually get separation of return values, because of the
way people use them. With hashtables or arrays, all return values from selectors
are always co-mingled. (That's what we currently know.)
-- Matthias