# New Ticket Created by  Lloyd Fournier 
# Please include the string:  [perl #126317]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=126317 >


http://design.perl6.org/S12.html#Custom_Meta-objects

    my module EXPORTHOW::DECLARE { }
    EXPORTHOW::DECLARE<controller> = ControllerHOW;

This currently throws "cannot modify an immuteable
EXPORTHOW::DECLARE". But if we fix that there is another problem:

my package EXPORTHOW::DECLARE {
    OUR::<controller> := Metamodel::ClassHOW;
};

doesn't work either. The thing that works is:

my package EXPORTHOW {
    package DECLARE {
        OUR::<controller> := Metamodel::ClassHOW;
   }
}

Not sure if the docs are wrong or the implementation though the
following problem seems linked:

package Foo { package Bar { our sub foo {} }};
package Foo::Bar { our sub bar {} };
say Foo::Bar::<&foo>.package; #-> (Bar)
say Foo::Bar::<&bar>.package; #-> (Foo::Bar)

But if you then try in a new interpreter:

package Foo { package Bar { our sub foo {} }};
package Foo::Bar { our sub bar {} };
#!> Redeclaration of routine foo (already defined in package Foo::Bar)

TL;DR rakudo is not sure which namespace nested packages belong to

Reply via email to