Analyze ruby conditional expression

  • Thread starter Gábor Sebestyén
  • Start date
G

Gábor Sebestyén

Hi,

I want to examine conditional expressions and I'm looking for tools to do i=
t.
It would be perfect to do it purely in ruby or even in jruby.

Any recommendations are apprecitated.

G=E1bor
 
R

Robert Dober

Hi,

I want to examine conditional expressions and I'm looking for tools to do= it.
It would be perfect to do it purely in ruby or even in jruby.

Any recommendations are apprecitated.

G=E1bor
I am not sure what a conditional expression is, care to give some examples?
Robert
 
R

Robert Klemme

I want to examine conditional expressions and I'm looking for tools to do it.

What exactly does "examine" mean in this context? If you want to
execute them and see results or execute parts of them, why is IRB not
sufficient?

Cheers

robert
 
G

Gábor Sebestyén

For instance, I want to decide whether the conditional expressions of
two subsequent IFs are the same (or equivalent). I know it's not easy
in most cases.

Let's see a primitive example:

if A then
do_something1
end

if B
do_something2
end

If A and B equals their conditional branches could be joined.

I'm investigating how it would be easy evaluate A and B whether they
are both true or false.
I need this in my refactoring experiment.

G=E1bor

 
R

Robert Klemme

2009/2/8 G=E1bor Sebesty=E9n said:
For instance, I want to decide whether the conditional expressions of
two subsequent IFs are the same (or equivalent). I know it's not easy
in most cases.

Let's see a primitive example:

if A then
do_something1
end

if B
do_something2
end

If A and B equals their conditional branches could be joined.

I'm investigating how it would be easy evaluate A and B whether they
are both true or false.
I need this in my refactoring experiment.

You are aware that expressions A and B can have side effects which
makes it practically impossible to decide on the equivalence? Keep in
mind that Ruby is not a pure functional language.

Cheers

robert

--=20
remember.guy do |as, often| as.you_can - without end
 
D

Dylan Evans

For instance, I want to decide whether the conditional expressions of
two subsequent IFs are the same (or equivalent). I know it's not easy
in most cases.

Let's see a primitive example:

if A then
do_something1
end

if B
do_something2
end

If A and B equals their conditional branches could be joined.

I'm investigating how it would be easy to evaluate whether A and B
are both true and/or false.
I need this in my refactoring experiment.

G=E1bor

if A && B then
"bingo"
elsif(A) then
"bango"
elsif(B)
"bongo"
else
nil
end

This is just a guess, but you could also use a nested if or a case.
case(a)
when !a | b then "a=3Dt, b=3Dt"
when !(a & b) then "a=3Dt, b=3Df"
when !(a | b) then "a=3Df, b=3Dt"
when !a & b then "a=3Df, b=3Df"
end

But that would be wierd.

case(

--=20
The UNIX system has a command, nice ... in order to be nice to the other
users. Nobody ever uses it." - Andrew S. Tanenbaum
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,483
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top