Stevan Little wrote:
> Actually I was thinking that MyClass.isa(...) would work much as it
> did in Perl 5 (like an instance). But that access to the underlying
> MyClass class instance would not be as simple. Something like
> ::MyClass would provide access to the Class instance.
>    class Foo {}
>    Foo.isa(Object) # true
>    Foo.isa(Foo)    # true
>    Foo.isa(Class)  # false
>    ::Foo.isa(Object) # true
>    ::Foo.isa(Class)  # true
>    ::Foo.isa(Foo)    # false
> However, this is not speced anywhere, so I am just really making stuff
> up out of my head :)

I've always thought Foo and ::Foo were synonyms (except maybe in
signatures, but that's another thread). I.e.:

  Foo =:= ::Foo =:= ::("Foo");   # true

And all of these are (except if you do metamodel hackery) Class objects,
i.e. the following all work and are semantically identical:

  my $foo = Foo      .new;
  my $foo = ::Foo    .new;
  my $foo = ::("Foo").new;

Am I wrong?


Linux, the choice of a GNU | Black holes result when God divides the
generation on a dual AMD   | universe by zero.  
Athlon!                    | 

Reply via email to