I got a little surprised when I discovered that property manipulations
on a "local" symbol, e.g. inside a 'let' block, had "global" effects,
like in this example:
: (prog (setq S 1) (put 'S 'p 2) (let S 3 (put 'S 'p 4)) (show 'S))
I understand this is probably the way it's supposed to be, but I wasn't
prepared. I have very little knowledge about other Lisps, so I don't
know whether properties is a common concept in other Lisps, or how
properties are used. I only know PicoLisp uses properties in OO matters.
Can this global nature of properties ever represent a problem when
working with Classes and Objects in PicoLisp?