I agree it looks like the best standardized candidate for use. But Orielly says showargs() is slower than showargs when not passing arguments. It's just a minor point but its something I read.
In any case, I'm used to the showarg() style. thanks, -rkl >> showargs(); > > I like this one. It's the "usual" way to program. In most languages the > parens are required, so it's just easier to stick with one habit. > My preference... > >> &showargs(); > > Ick. I use this one when it is required (references and overriding > prototypes), otherwise it isn't what I mean. If I mean to just execute > the > method, then I don't use it. > >> showargs; > > Yuk. It saves a few keystrokes, but I tend to avoid it. > >> showargs(); > > I like this one. It's the "usual" way to program. In most languages the > parens are required, so it's just easier to stick with one habit. > > Rob > > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Sent: Thursday, October 02, 2003 5:43 PM > To: Thomas Bätzler > Cc: '[EMAIL PROTECTED]'; Tim Johnson; [EMAIL PROTECTED] > Subject: RE: explicit vs implicit syntax > > > Thanks I understand what you're saying. > > If I could ask, which one of these would you use? > >> &showargs; #NOT this is the tricky > >> &showargs(); >> showargs; >> showargs(); > > thanks, > -rkl > >> [EMAIL PROTECTED] asked: >>> Here's an excerpt about the & from orielly and what the heck >>> does it means: >>> >>> "...If a subroutine is called using the & form, the argument list is >>> optional. if ommitted, no @_ array is setup for the routine; >>> the @_ array at the time of the call is visible to subroutine instead." >> >> If in doubt, run a test ;-) >> >> #!/usr/bin/perl -w >> >> use strict; >> >> sub showargs { >> print "arguments are: " . join(', ', @_) . "\n"; >> } >> >> sub test { >> print "Arguments for test() are: " . join(', ', @_) . "\n"; >> print "Calling &showargs - "; >> &showargs; >> print "Calling &showargs() - "; >> &showargs(); >> print "Calling showargs - "; >> showargs; >> print "Calling showargs() - "; >> showargs(); >> } >> >> test qw(foo baz bar); >> __END__ >> >>> So, is there a better or worse? both ways works for me. I just started >>> going back and putting the & onto the sub ;) I don't like it >>> the & but I thought that you need it. >> >> See for yourself - there's only one use for the ampersand, >> and it's obscure. My advice would be to avoid using it even >> in the one situation where it would make sense - when passing >> @_ as an argument to your function. Sure, it is idiomatic Perl >> at its best, but it also makes a program harder to read and >> understand. >> >> In other words - save it for Perl Golf ;-) >> >> HTH, >> Thomas >> >> PS: Perl Golf - writing code with as little (key-)strokes as >> possible. >> > > > -- > 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]