Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 Ruby... from Turing
Index -> Programming, Ruby -> Ruby Help
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
HyperFlexed




PostPosted: Sun Nov 21, 2004 2:37 am   Post subject: Ruby... from Turing

I decided to learn another language...

I downloaded freeRide, but now I have no idea what to do. I've tried writing a few programs, but when I run them, the program crashes.

I have a few questions.

how do I declare a variable?
how do I initialize a variable?
how do I display something?
how would this be written in Ruby? (put "A string mixed with ", aNumVar)

Also, could someone show me the HelloWorld program in Ruby? I tried finding my own tuts, but damn. There is all this amazingly intimidating jargon all over the pages, and I don't know wtf is going on.
Sponsor
Sponsor
Sponsor
sponsor
Tony




PostPosted: Sun Nov 21, 2004 4:22 am   Post subject: (No subject)

code:

text = "hello world"
puts text

code:

num = 3.1415
puts "pi is #{num}"
Smile
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
HyperFlexed




PostPosted: Sun Nov 21, 2004 12:56 pm   Post subject: (No subject)

wow... interesting. No formal varaible declarations.

I have another question, are programming blocks in any way like procedures and functions? It would make sense because any variable "declared" in them are not global.

thx alot btw.. I think when I get the hang of Ruby I'm going to write a big tutorial from an idiots POV.
HyperFlexed




PostPosted: Sun Nov 21, 2004 12:57 pm   Post subject: (No subject)

P.S, anyone know any good IDE's for Ruby? I'm not really liking FreeRIDE at all. Should it just run my programs? or do I have to install some kind of Ruby thingamajigger?
wtd




PostPosted: Sun Nov 21, 2004 2:15 pm   Post subject: (No subject)

HyperFlexed wrote:
P.S, anyone know any good IDE's for Ruby? I'm not really liking FreeRIDE at all. Should it just run my programs? or do I have to install some kind of Ruby thingamajigger?


For learning the basics, use IRB. Start -> Run, then type "irb" and hit enter.
HyperFlexed




PostPosted: Sun Nov 21, 2004 2:18 pm   Post subject: (No subject)

wtd wrote:
HyperFlexed wrote:
P.S, anyone know any good IDE's for Ruby? I'm not really liking FreeRIDE at all. Should it just run my programs? or do I have to install some kind of Ruby thingamajigger?


For learning the basics, use IRB. Start -> Run, then type "irb" and hit enter.


ummmm... I think I need to install something first because that didn't work.
wtd




PostPosted: Sun Nov 21, 2004 2:28 pm   Post subject: (No subject)

HyperFlexed wrote:
wow... interesting. No formal varaible declarations.


No, you don't have to declare variables. It can be a real time-saver.

HyperFlexed wrote:
I have another question, are programming blocks in any way like procedures and functions? It would make sense because any variable "declared" in them are not global.


Somewhat. There are a few ways of creating a block. We can either explicitly create a new Proc object:

code:
add = Proc.new { |a, b| a + b }


We can use the lamnda method, which often jives better with math people:

code:
add = lambda { |a, b| a + b }


And now, if we have a function which takes a block as an argument...

The & indicates the argument is a block

code:
def two_and_two(&block)
   block.call(2, 4)
end


We can either call it using the existing block:

code:
two_and_two(add)


Or we can pass it a new block:

code:
two_and_two { |a, b| a + b }


The other way to use a block with a function is to "yield" the variables out to any block that might be included.

code:
def two_and_two
   yield 2, 2
end


And we can call it in the same way:

code:
two_and_two { |a, b| a + b }


The power of this, vs. other methods in other languages is... what if I want to multiply two and two?

code:
two_and_two { |a, b| a * b }
wtd




PostPosted: Sun Nov 21, 2004 2:30 pm   Post subject: (No subject)

HyperFlexed wrote:
wtd wrote:
HyperFlexed wrote:
P.S, anyone know any good IDE's for Ruby? I'm not really liking FreeRIDE at all. Should it just run my programs? or do I have to install some kind of Ruby thingamajigger?


For learning the basics, use IRB. Start -> Run, then type "irb" and hit enter.


ummmm... I think I need to install something first because that didn't work.


http://rubyinstaller.rubyforge.org/wiki/wiki.pl
Sponsor
Sponsor
Sponsor
sponsor
HyperFlexed




PostPosted: Sun Nov 21, 2004 6:01 pm   Post subject: (No subject)

all those code examples, are all of those things keywords or something?

ruby is very minimalist. I think it's retarted.
Tony




PostPosted: Sun Nov 21, 2004 6:25 pm   Post subject: (No subject)

I think you should take a break... *click click* We'll see you tomorrow Smile
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
wtd




PostPosted: Sun Nov 21, 2004 7:41 pm   Post subject: (No subject)

HyperFlexed wrote:
all those code examples, are all of those things keywords or something?


Only "def", "end", ".", and the basic "{ | | }" construct are part of the syntax.

"Proc" is a class, "new" is a method of that class, "two_and_two" is a user-defined method, and "lambda" is a method of the Object class.
Andy




PostPosted: Sun Nov 21, 2004 8:00 pm   Post subject: (No subject)

HyperFlexed wrote:
ruby is very minimalist. I think it's retarted.


the point of ruby was to be simple, so its not a pain to program
wtd




PostPosted: Sun Nov 21, 2004 8:17 pm   Post subject: (No subject)

dodge_tomahawk wrote:
HyperFlexed wrote:
ruby is very minimalist. I think it's retarted.


the point of ruby was to be simple


And don't forget flexible. Smile
Display posts from previous:   
   Index -> Programming, Ruby -> Ruby Help
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 13 Posts ]
Jump to:   


Style:  
Search: