Janek: 

Thank you for explaining the difference between calling 
subroutines with vs. without the ampersand.

I'm glad I'm on the beginners list.

Sincerely,

Kevin Christopher


---------- Original Message ----------------------------------
From: Camilo Gonzalez <[EMAIL PROTECTED]>
Date:  Thu, 6 Jun 2002 08:23:33 -0500 

>Janek,
>
>Wouldn't it print:
>foo:
>&foo:A B C
>
>Also, I believe that you must declare the subroutine before you 
are allowed
>to reference it without the &. Am I right about that?
>
>-----Original Message-----
>From: Janek Schleicher [mailto:[EMAIL PROTECTED]]
>Sent: Wednesday, June 05, 2002 5:10 AM
>To: [EMAIL PROTECTED]
>Subject: Re: subroutine or &subroutine
>
>
>Kevin Christopher wrote at Wed, 05 Jun 2002 04:58:38 +0200:
>
>> Yes, you can call subroutines either way, with or without 
the "&". The
>only case when the
>> subroutine must be prefixed with an ampersand is, I believe, 
when you're
>assigning a reference
>> variable, eg:
>> 
>> $reference_x = \&subroutine_y;
>> 
>> But that's another story.
>> 
>
>Oh, I'm afraid that's not the truth :-)
>
>&subroutine without any arguments calls the subroutine with the 
implicit @_
>array,
>while subroutine only calls subroutine() without any argument.
>
>Look at this snippet:
>@_ = qw(A B C);
>
>print 'foo:'; foo; print "\n";
>print '&foo:'; &foo; print "\n";
>
>sub foo {
>   print @_;
>}
>
>It prints:
>foo:
>&foo:ABC
>
>
>Greetings,
>Janek
>
>-- 
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>
>-- 
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to