Front page | perl.beginners |
Postings from March 2002
RE: &&
Thread Previous
|
Thread Next
From:
Chas Owens
Date:
March 28, 2002 08:16
Subject:
RE: &&
Message ID:
1017331963.26037.301.camel@tert.icallinc.com
Yes, prototypes _can_ be used here, but prototypes in general have
fallen out of favor amongst the more august members of the Perl
community because of the reasons I stated below.
Merlin, if you are reading, can you give us your opinion of prototypes?
On Thu, 2002-03-28 at 11:11, Nikola Janceski wrote:
> good info.. but this doesn't look like a method call.
>
> I prefer prototypes for modules that I write for internal use at my company,
> especially when I don't feel like explaining to 60 people everytime why
> thier code doesn't work, when they forget to pass an extra argument.
>
> > -----Original Message-----
> > From: Chas Owens [mailto:alas@widomaker.com]
> > Sent: Thursday, March 28, 2002 11:03 AM
> > To: beginners@perl.org
> > Subject: RE: &&
> >
> >
> > On Thu, 2002-03-28 at 10:50, Nikola Janceski wrote:
> > > There in lies your problem.. you are not passing to the subroutine
> > > correctly.
> > >
> > > try declaring your sub like so:
> > > sub extract_data (\@\@\@){
> > > but if you do this don't call extract_data with &
> > > use
> > > extract_data(@datum, @seminare, @staedte);
> > >
> > > or pass the ref of the arrays:
> > > extract_data(\@datum, \@seminare, \@staedte);
> >
> > Passing as refs appears to be the preferred method. Subroutine
> > prototypes are flaky and don't work properly with OO based Perl
> > (prototypes can only handle stuff at compile time, while OO
> > method calls
> > happen at runtime).
> >
> > >
> > >
> > > > -----Original Message-----
> > > > From: MarcusWillemsen@compuserve.de
> > > > [mailto:MarcusWillemsen@compuserve.de]
> > > > Sent: Thursday, March 28, 2002 10:39 AM
> > > > To: Chas Owens
> > > > Cc: beginners@perl.org
> > > > Subject: Re: &&
> > > >
> > > >
> > > > Hi Chas,
> > > >
> > > >
> > > > thanks for your reply.
> > > > The code was the simplified code of a subroutine (below).
> > The Data
> > > > originates from a Webformula and is passed on to the
> > Subroutine like
> > > >
> > > > snippet
> > > > &extract_data(@datum, @seminare, @staedte);
> > > > ..
> > > > ..
> > > > ..
> > > >
> > > > sub extract_data {
> > > > my $dates = shift;
> > > > my $themes = shift;
> > > > my $cities = shift;
> > > > my @dates = split /\s+/, "$dates";
> > > > my @themes = split /\s+/, "$themes";
> > > > my @cities = split /\s+/, "$cities";
> > > > if(@dates && !@themes && !@cities) {
> > > > my $date_count = @dates;
> > > > if($date_count > 1) {
> > > > $sth_between = $dbh->prepare( qq{SELECT *
> > FROM termine
> > > > WHERE beginn BETWEEN ? and ?});
> > > > $sth_between->execute($dates[0],$dates[1]);
> > > > my $result = $sth_between->fetchrow_hashref();
> > > > if($result){
> > > > print $form->p("$result->{beginn}");
> > > > #print out rest of fields
> > > > }
> > > > }
> > > > else {
> > > > $sth_exact = $dbh->prepare(qq {SELECT * FROM
> > > > termine WHERE
> > > > beginn < ? ORDER BY beginn ASC});
> > > > $sth_exact->execute($dates[0]);
> > > > my $result = $sth_exact->fetchrow_hashref();
> > > > if($result){
> > > > while($result){
> > > > print $form->p("$result->{beginn}");
> > > > #print out rest of fields
> > > > }
> > > > }
> > > > else{
> > > > print $form->p("Tut mir leid nichts
> > gefunden");
> > > > }
> > > > }
> > > > }
> > > > #here should be all the other if else loop seven in total
> > > > each printing
> > > > #out search results depending on which array or which
> > combination of
> > > > #arrays contains data
> > > >
> > > >
> > > > }
> > > > Marcus
> > > >
> > > >
> > > >
> > > > --
> > > > To unsubscribe, e-mail: beginners-unsubscribe@perl.org
> > > > For additional commands, e-mail: beginners-help@perl.org
> > > >
> > >
> > >
> > --------------------------------------------------------------
> > --------------
> > > --------------------
> > > The views and opinions expressed in this email message are
> > the sender's
> > > own, and do not necessarily represent the views and
> > opinions of Summit
> > > Systems Inc.
> > >
> > >
> > > --
> > > To unsubscribe, e-mail: beginners-unsubscribe@perl.org
> > > For additional commands, e-mail: beginners-help@perl.org
> > >
> > >
> > --
> > Today is Boomtime the 14th day of Discord in the YOLD 3168
> > Umlaut Zebra über alles!
> >
> > Missile Address: 33:48:3.521N 84:23:34.786W
> >
> >
> > --
> > To unsubscribe, e-mail: beginners-unsubscribe@perl.org
> > For additional commands, e-mail: beginners-help@perl.org
> >
>
> ----------------------------------------------------------------------------
> --------------------
> The views and opinions expressed in this email message are the sender's
> own, and do not necessarily represent the views and opinions of Summit
> Systems Inc.
>
>
--
Today is Boomtime the 14th day of Discord in the YOLD 3168
Kallisti!
Missile Address: 33:48:3.521N 84:23:34.786W
Thread Previous
|
Thread Next