Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

perl end block alternative

Posted on 2008-10-06
8
Medium Priority
?
461 Views
Last Modified: 2012-05-05
I am using older version of perl in my work, we don't want to upgarde to newer version of perl anytime soon, because that might break lot of things, but I want to do something like

end {

   call subroutine;
}

we are using perl 5.0, when I use end{} it compiles ok, but doesn't seem to run the end block. Meaning never executes anything from end block.

Is there an alternative for this end{} block?

Thanks
0
Comment
Question by:Anu2117
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
8 Comments
 
LVL 48

Expert Comment

by:Tintin
ID: 22654210
I very seriously doubt if you are using Perl 5.0

perl -v

will tell you the exact version.

Perl is case sensitive, so 'end' should be 'END'

0
 

Author Comment

by:Anu2117
ID: 22654252

END {
    print "; Anu: Lunit end block\n";
    $ludb->write_persistant_objects();
};
 
I know the syntax, and it works on 5.8.5 the lastest, I have.
 
but it doesn't work on 5.0
 
0
 
LVL 48

Expert Comment

by:Tintin
ID: 22654345
Can you please tell us the *exact* perl version you have (5.0 is not a valid Perl version).

Post the output of

perl -v
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:Anu2117
ID: 22654659
/usr/97r1.3/lib/perl5/i386_linux22/5.00404
0
 

Author Comment

by:Anu2117
ID: 22654729
This is not running plain perl code, I am running a tool which uses perl 5.00404 version apparently.  
0
 
LVL 48

Expert Comment

by:Tintin
ID: 22655189
What about a very, very simple piece of code like below.  Does it run under your old Perl version?
END {
  print "This is the end block\n";
}
 
print "Start\n";

Open in new window

0
 

Author Comment

by:Anu2117
ID: 22661731
It doesn't like init{ }, check { },... as well.
Instead of getting end{ } to work, is there another way of achieving the same result in perl?
0
 
LVL 48

Accepted Solution

by:
Tintin earned 1500 total points
ID: 22662873
Are you saying the output you get from the script I posted is just

Start

and nothing else?

Do you have a specific need for an END block?  Could you not just put the code at the end of your script instead?
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

On Microsoft Windows, if  when you click or type the name of a .pl file, you get an error "is not recognized as an internal or external command, operable program or batch file", then this means you do not have the .pl file extension associated with …
I have been pestered over the years to produce and distribute regular data extracts, and often the request have explicitly requested the data be emailed as an Excel attachement; specifically Excel, as it appears: CSV files confuse (no Red or Green h…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
Six Sigma Control Plans

618 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question