Question: There may be more to this

This is a follow-up question to my last-name evaluation question a few days ago.

Well, I thought I had got it, but look at this trivial example involving records:

r:=Record(p1=parm1,p2=parm2);

r:-p2;

         parm2

parm2:=0;

r:-p2;

        0

eval(r);

      

So while r:-p2 is being updated; an eval of r does not show it. I have reason to believe (from other much more complicated cases I have looked at) that in fact the parameters in a record do get updated and the printout in eval() is in error; but I do not have great confidence here... am I still missing something? (I realize that this is not directly a last-name evaluation question but this case seems to be related to the general issue of what is being evaluated when.).

Still using Maple 15.

Any more insight is appreciated,

M.D.

Please Wait...