Arrgh. lets try this again (for examples) Statement: $bar = $foo is my_prop = 0 is some_prop; This makes $foo have 'my_prop' and 'some_prop' with the value 0 - and $bar have 'my_prop' and 'some_prop' with the value 0. Statement: $bar = 0; This makes $bar have no properties with the value 0 (ie: it clears out all non-persistent properties) Statement: $bar isnt my_prop; This makes $bar keep all of its properties, removing my_prop; Statement: $bar = 0 is const; This makes $bar now a constant. The persist keyword makes it so properties (note - no 'value', or 'variable' here persist across assignment: Statement: $bar = 1 is my_prop, persistant; Now, $bar will be 'my_prop' even if it is reassigned. Statement: $bar = 1 is persistant; Now, $bar will keep all of its properties through assignment. Anyways, just a clarification. Get rid of the distinction between 'value' or 'variable' properties, and you have no clumsy syntax or confusion. EdThread Previous | Thread Next