9:  our sub Which (

What if you remove the space between Which and the paren?

-y

On Fri, Sep 15, 2017 at 5:39 PM, ToddAndMargo <toddandma...@zoho.com> wrote:

> On 09/13/2017 10:57 PM, Brandon Allbery wrote:
>
>> On Thu, Sep 14, 2017 at 1:48 AM, Brandon Allbery <allber...@gmail.com
>> <mailto:allber...@gmail.com>> wrote:
>>
>>     If you want to use the other way, the CheckSystemDependency module
>>     MUST define Which as: our sub Which ...
>>     If it is not explicitly declared "our", then it is declared "my" and
>>     the only way the name can be seen outside the CheckSystemDependency
>>     module is for it to be exported and for your module to import it.
>>
>>     You cannot simply call any sub you see in a different module. If it
>>     is not explicitly declared "our" then you cannot access it; it is
>>     declared locally to that module and cannot be seen anywhere else.
>>
>>
>> If this is still not clear, let's try an example:
>>
>>    pyanfar Z$ 6 'module Foo { sub a { say "nope" }; our sub b { say "yep"
>> } }; Foo::b();'
>>    yep
>>    pyanfar Z$ 6 'module Foo { sub a { say "nope" }; our sub b { say "yep"
>> } }; Foo::a();'
>>    Could not find symbol '&a'
>>      in block <unit> at -e line 1
>>
>>
> Hi Brandon,
>
> What am I doing wrong, now?
>
> in the pm6:
>
> 9:  our sub Which (
> 10:    $ProgramName,    # name of the program to search for
> 11:    $HowToExit )     # live | die
> 12: is export {
>
>
> in the pl6:
>
> 8:  use CheckSystemDependancy; # qw[ Which ];
> 36: $Found = CheckSystemDependancy::Which( $ProgramName, $HowToExit );
>
>
> Error:
>
> Could not find symbol '&Which'
>   in block <unit> at ./CheckSystemDependancy.pl6 line 36
>
>
> -T
>

Reply via email to