Subject: set_property_info

From: [email-masked]
Date: Fri, 26 Feb 1993 17:10:24 -0800

[This message got diverted by a bug in the mail system here at PARC; I have
re-typed it from a paper copy.  --Pavel]

I found an interesting behaviour of the builtin function
set_property_info:

I created a property in my general player class:

   add_property($class.player,"weight_carried",0,{$admin,"rc"})

What does this? It creates a property called weight_carried
in $class.player and all it's descendants. The owner
of the property is changed for the different objects.
Ok, that is not new.

But then I wanted to change the access permissions of the
property to no access and owner $admin.  So I did

   set_property_info($class.player,"weight_carried",{$admin,""})

But the set_property_info is not recursive :(, I only
changed the property info of $class.player.weight_carried.

I think it would be fine to have a set_property_info that worked
recursive. Well I could work around this problem, but would
it be a real solution ?

Stefan

---

From: Roger Crew <[email-masked]>
Date: Fri, 26 Feb 1993 17:29:31 -0800

Yes, set_property_info() is broken.  In LambdaCore, there's
$wiz_utils:set_property_flags() which is something of a workaround.
It however has the problem that in operations involving central core
objects (e.g., $player) with thousands of descendants, it has to
suspend, leaving the world in an ugly state.

Nor can/should this be fixed until some decisions made about the
"right" way for property flags, notably the c flag, to work.

[...As it happens, I've got a backlogged posting on this, but I'll 
wait until the moocows list and I are a little less busy...]
--
Roger Crew
Internet:   [email-masked]
LambdaMOO:  Rog