new to ruby - please help w/ code structure?

C

Corey

I'd like to make the following code more terse... i.e. more expressive w/ less
lines:

if free || os
if line =~ new_re
cvs(host)
host, free, os = nil
next
end
end

I'm looking for something more along the lines of:

( line =~ new_re && do { cvs(host); host, free, os = nil; next } )
if free || os

But of course that's giving me plenty of errors...

What would the ruby idiom for the above be?

( I'm coming from perl... so I'm still thinking in perl unfortunately )

Many thanks!
 
Z

Zach Dennis

Corey said:
I'd like to make the following code more terse... i.e. more expressive w/ less
lines:

if free || os
if line =~ new_re
cvs(host)
host, free, os = nil
next
end
end

I dont know what you're doing, but to take exactly what you typed:

if free||os and line=~new_re
cvs host ; host,free,os=nil ; end

OR

(cvs host ; host,free,os=nil ; next) if free||os and line=~re

Zach
 
C

Corey

I dont know what you're doing,

Heh - that's ok, neither do I!

but to take exactly what you typed:

if free||os and line=~new_re
cvs host ; host,free,os=nil ; end

OR

(cvs host ; host,free,os=nil ; next) if free||os and line=~re

Perfect -- many thanks!


Beers,

Corey
 
J

James Edward Gray II

Perfect -- many thanks!

Funny, I was thinking just the opposite. :D Us Ruby guys love
pretty code.

That's you're Perl self talking, trust me. Let it die. You won't
miss it, I promise.

Try this question on for size: Give me one single advantage to the
above changes? Shorter? Please. Harder to code (that's why you
asked), harder to understand, harder to change, etc. For what? You
dropped a few lines.

Ruby is truly a beautiful language. Give it a chance to work its
magic on you and don't be surprised if you eventually find yourself
saying, "No, that's too ugly. I can do better..."

Just a small piece of advice, from one ex-Perl junkie to another. No
offense intended. :)

James Edward Gray II
 
C

Corey

On Friday 06 May 2005 07:46 pm, James Edward Gray II wrote:
Just a small piece of advice, from one ex-Perl junkie to another. No
offense intended. :)

You speak the truth.

I was coding ruby exactly the way I would have coded in perl... I think mainly
because this was precisely the sort of script that perl excels at: a quick
hackish, throw-away thing to parse a file. I actualy started it in perl,
then figured I'd try in ruby just as a quick immersion excercise... learn
some syntax and whatnot. I got imipatient because I really needed this thing
super quick... so, no harm done - when I have more time, I definitely intend
to learn the actual ruby idioms; I totally agree with your excellent points.

Beers!

Corey
 

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

Forum statistics

Threads
474,175
Messages
2,570,942
Members
47,476
Latest member
blackwatermelon

Latest Threads

Top