> Err. There are only two things: compile-time variable properties and
> run-time value properties. Attributes are a Perl 5 construct that we're
> renaming because the name conflicts with the OO term for object data.

So,

$a is true

and 

$a.true = 1

are synonyms, right?

if not, then there are three things: compile-time variable properties,
run-time variable properties, and run-time value properties, no?

if so, then wouldn't it be safer to put properties inside a special object
associated with each object (the 'traits' object) so there would be little
namespace collision?

> Of the two things that do remain, there is no overlap in functionality.
> Variable properties modify variables at compile-time, value properties
> annotate values at run-time.
> 
> I have suggested to Larry that variable properties be renamed 'traits'
> and given a slightly different syntax to completely distinguish the two
> concepts, but until he blesses or vetos the idea, I don't intend to
> publicize it.

ok... then I guess my one remaining question is... why have two? Aside from
optimization, why do we need compile time properties/traits at all? What can 
you do with a compile time trait that you can't do with a run-time trait 
(which, albeit, may have compile-time syntax checking).

I'll defer the answering of this question to the time when larry blesses or 
vetos your syntax idea..

Ed

Reply via email to