There are loooads of ruby docs out there. There are also some good
reference guides under /usr/share/doc/ruby-1.8.3,
/usr/share/doc/ruby-docs-1.8.3 and /usr/share/doc/ruby-libs-1.8.3. What
would the more experienced of you recommend for command line options? So
far I’ve been using
ruby -c foo.rb
ruby -W foo.rb
as they are the simplest I’ve not really used irb that much as I
haven’t seen any advantage in using it.
I find it strange that ruby -c foo.rb gives “syntax OK” but ruby -w
foo.rb shows me all of the syntax errors. In the example below i
make a deliberate mistake…
You do, but it’s not a syntax error; it’s a runtime error. -c doesn’t
run the code, but only checks it for syntax. -w runs the code.
I find it strange that ruby -c foo.rb gives “syntax OK” but ruby -w
foo.rb shows me all of the syntax errors. In the example below i make a
deliberate mistake…
#script
#!/usr/bin/ruby #Wed Jan 4 06:17:22 GMT 2006
class Menu
def initialize(welcome, stage, usage) @welcome = print “Welcome to
de-blah-de-blah-de-blah\n\n\n” @usage = usage # we will use this as a user
guide @stage = stage
#date #print “which stage are you at? #b:- before site work #d:- during site work #a:- atfer site work #q:- quit!\n”
end
def to_s
“Deskstudy: #@welcome #@usage #@stage”
end
end
#menu = Menu.new(“welcome”, “usage”, “stage”)
menu = Menu.new(“welcome”, “stage”)
menu.inspect
puts menu
#errors
menu.rb:21:in `initialize’: wrong number of arguments (2 for 3)
(ArgumentError)
from menu.rb:21
I find it strange that ruby -c foo.rb gives “syntax OK” but ruby -w
foo.rb shows me all of the syntax errors. In the example below i
make a deliberate mistake…
You do, but it’s not a syntax error; it’s a runtime error. -c doesn’t
run the code, but only checks it for syntax. -w runs the code.
Or to give a simpler testcase:
$ cat div0
#!/usr/bin/env ruby
puts 5/0
$ ruby -c div0
Syntax OK
$ ruby -w div0
div0:2:in `/’: divided by 0 (ZeroDivisionError)
from div0:2
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.