Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Re: while loop with diamond operator

by tobyink (Abbot)
on Aug 07, 2012 at 12:34 UTC ( #985961=note: print w/replies, xml ) Need Help??

in reply to while loop with diamond operator

while(<>){ $data = $data . $_ ; }

... can be better written as:

$data = do { local $/; <> };

Not only is that shorter, but it should actually run faster. In your version, Perl has to split STDIN on each new line character, and then join them back together. Localizing $/ just slurps the whole thing in at once.

How exactly are you getting Tomcat to launch your Perl script? Are you 100% sure that whatever mechanism it's using is actually passing data to STDIN?

perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://985961]
and the grasshoppers chirp...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (2)
As of 2017-07-23 01:55 GMT
Find Nodes?
    Voting Booth?
    I came, I saw, I ...

    Results (343 votes). Check out past polls.