Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

evaluation of expression

 
Naresh Gunda
Ranch Hand
Posts: 163
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
How to evaluate the following expression


Can any one of u tell me, which operators are left associative and which operators are right associative?

Thanx in advance
 
Abhishek Sharma
Ranch Hand
Posts: 68
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi there,
After the execution of this expression b1 will have value
FALSE as this expression consists of subexpressions, and therefore
first of all subexpressions will be evaluated
in given question
boolean b1 = false?false:true?false:true?false:true;
it will break to
boolean b1 = (false?false true?false true?false:true)));
and result is accordingly...........
 
Prashanth Raghavan
Greenhorn
Posts: 6
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
It ultimately boils down from the rightmost to the left. The subexpressions get executed and the results assigned and this continues in a chain from right to left.
 
Narender Kumar
Greenhorn
Posts: 11
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think this is one of those
"think-like-a-compiler" kinda question.

lets see how we can evaluate this expression.
move from left to right as per associativity rules.

step 1: input--> false?false:true?false:true?false:true;
output--> false?false true?false:true?false:true);

step 2: input--> false?false true?false:true?false:true);
output--> false?false true?false true?false:true));

step 3: input--> false?false true?false true?false:true));
output--> false?false true?false true?false true)));

brackets shud clear your doubt a little bit....
does it??

-Narender
"Rock Steady"
 
Narender Kumar
Greenhorn
Posts: 11
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
oh nooooooooo....
i didnt not put soooo many sad emoticons in my message.

 
Narender Kumar
Greenhorn
Posts: 11
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
i am not gonna give up this easy.


step 1: input--> false?false:true?false:true?false:true;
output--> false?false: (true?false:true?false:true);

step 2: input--> false?false: (true?false:true?false:true);
output--> false?false: (true?false: (true?false:true));

step 3: input--> false?false: (true?false: (true?false:true));
output--> false?false: (true?false: (true?false true)));
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic