On 8/5/2012 6:56 PM, Steve Haflich wrote:
> Richard, this is not completely harmless. The ANS for get has this
> paragraph:
>
> get finds a property on the property list2 of symbol whose property
> indicator is identical to indicator, and returns its corresponding
> property value. If there are multiple properties1 with that property
> indicator, get uses the first such property. If there is no property
> with that property indicator, default is returned.
>
> Similarly, remprop removes only the first matching property. All this
> makes it possible (in a non-multi-threaded application) to make a
> temporary change to a property and get the old value (if any) back.
>
> This may have been acceptable technique way back when, but certainly
> ugly today. I hope no Maxima code is doing anything like this, but way
> back when was when much of Maxima was written...
I doubt that anyone was placing multiple properties with the same
indicator (= operators) on a symbol's
property list. In fact, it is not clear to me that there is an idiom
for placing such an extra property
on a plist. Maybe extracting the symbol-plist and hacking on it with
destructive operations?
So I think it is harmless in this context.
RJF