Hi David
>Sergey,
>
>Thanks as always!You're welcome
>
>Lately, I have been trying to use eval() or name expressions in places where previously, out of force of habit, I used macro substitution in the past. But I am finding that it doesn't always work as I expect, and sometimes I end up breaking my code, or, having the opposite effect that I intended. For example in this case, I thought the eval() would execute faster than the &, but it turned out that the opposite was true. Take a look at thread I mentioned in another message for explanation.
>I am guessing that the VFP runtime 'hands the expression over to Rushmore' and rushmore says 'does this expression match one of my index keys', and rushmore decides that it doesn't? But I don't know why Rushmore wouldn't be smart enough to figure out what to do with the eval() in this context. How would it know what result of EVAL() could be?
>I'm also guessing that with Macro substitution, it compiles the macro first, then hands it off to Rushmore?VFP parses and compiles command with macro substitution first and than executes it as any other command. If it's optimaziable, as in this case, Rushmore will kick in.
--sb--