Ruby is very flexible and will allow you to butcher all of the good things about its syntax in a large variety of ways. Here we'll present, by example, how to keep things nice.
foo.bar(a)foo.bar aif foo
a = :bar
enda = :bar if fooif foo
a = :bar
else
a = :doo
enda = if foo
:bar
else
:doo
enda = foo ? 10 : 100foo.bar a,b,cfoo.bar( a,b,c )foo.bar a ,b ,cfoo.bar a, b, ca=0a = 0def foo(a=nil)
enddef foo(a = nil)
end{:foo=>'bar'}{:foo => 'bar'}{ :foo=>'bar' }{ :foo => 'bar' }puts "Hello" unless mary == nilputs "Tiny" if foo == 0puts "Hello" unless mary.nil?puts "Tiny" if foo.zero?foo = false
if !foo
...do something...
endfoo = false
unless foo
...do something...
endfoo = false
if !foo
...do something...
else
...do something else...
endfoo = false
unless foo
...do something...
else
...do something else...
endfoo = false
if foo
...do something else...
else
...do something...
endwhile !foo
...do something...
enduntil foo
...do something...
endrequire 'foo'
require 'bar'
require 'doo'
require 'dah'%w{
foo
bar
doo
dah
}.each { |f| require f }class MyNewException < StandardError; endMyNewException = Class.new StandardErrorfoo.bar { :foo => 'bar' }foo.bar :foo => 'bar'def blah(foo)
if foo
...do something...
return 1
else
return 2
end
enddef blah(foo)
if foo
...do something...
1
else
2
end
enddef foo
...do something...
return nil
enddef foo
...do something...
nil
enddef blah(foo)
false if foo
enddef blah(foo)
!foo
enddef foo
return nil if something
...do something
enddef foo
return if something
...do something...
endwhile true
...do something...
endloop do
...do something...
enda = :foo
a1 = :bar
doo = :daha = :foo
a1 = :bar
doo = :dahdef initialize(a, b, c)
@a = a
@b = b
@c = c
enddef initialize(a, b, c)
@a, @b, @c = a, b, c
end