> > Consider the code: > > > > my $foo = 1 is Found; > > &bar($foo); > > > > sub bar { my $baz = shift; if ($baz.Found) { ...} } > > > > Does the value of $baz have the Found property? > > Yes. > > > If so, does the compiler know that? > > No. Because it only has the property at run-time. So, is it right to say that one can't use stricture to avoid use of mistyped user defined value attached properties? (Perhaps with the exception of references to a value property in the same lexical scope as assignments of that value?) And, if this is so, then isn't it impossible to have useful stricture about variable properties, because any given reference to a property might be instead a value property unknown to the compiler?
- $foo.Foun (was Re: Properties and stricture) Me
- Re: $foo.Foun (was Re: Properties and stricture) Michael G Schwern
- Re: $foo.Foun (was Re: Properties and stricture) Damian Conway
- Re: $foo.Foun (was Re: Properties and stricture) Me
- "closed" property ((was Re: $foo.Fo... David L. Nicol
- Re: $foo.Foun (was Re: Properties and stricture) Damian Conway
- Re: $foo.Foun (was Re: Properties and stricture) Me
- Re: $foo.Foun (was Re: Properties and stricture) Damian Conway
- Re: $foo.Foun (was Re: Properties and stricture) Me
- Re: $foo.Foun (was Re: Properties and stricture) David L. Nicol
- Re: $foo.Foun (was Re: Properties and stricture) Me
- Re: $foo.Foun (was Re: Properties and stricture) Daniel S. Wilkerson
- Re: $foo.Foun (was Re: Properties and stricture) Michael G Schwern
- Re: $foo.Foun (was Re: Properties and stricture) David H. Adler
- Re: $foo.Foun (was Re: Properties and stricture) Dave Storrs