Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: conditional statement works one way, but not the other

by kcott (Archbishop)
on May 15, 2014 at 09:09 UTC ( #1086121=note: print w/replies, xml ) Need Help??


in reply to conditional statement works one way, but not the other (Updated)

G'day igoryonya,

"but this gives a syntax error"

When you get errors, please post them.

"I checked and rechecked, didn't find any parentacy or semicolon missing or extra."

I'm fairly certain that whatever error you got said nothing about parentheses or semicolons. The error was probably more like these:

$ perl -Mstrict -Mwarnings -le '1 == 0 ? 1 : (for (1) { 1 })' syntax error at -e line 1, near "(for " Execution of -e aborted due to compilation errors.
$ perl -Mstrict -Mwarnings -le '1 == 0 ? 1 : (while (1) { 1 })' syntax error at -e line 1, near "(while" Execution of -e aborted due to compilation errors.

I suspect you may be confusing conditional statements (e.g. using if) with the Conditional Operator which takes operands, not Compound Statements.

Writing code the way you have is highly error-prone. It's very difficult to read and a maintenance nightmare. Please read the "Perl Style Guide" — you may also find perltidy useful.

-- Ken

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1086121]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (2)
As of 2023-03-21 18:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Which type of climate do you prefer to live in?






    Results (60 votes). Check out past polls.

    Notices?