Mage wrote:

>
> However, what is this code good for?
>
>  def make_point_hash( point )
>    center = { :x => 1, :y => 2 }
>    big = { :r => 10 }
>    center.merge( big ).merge( point )
>  end
>  make_point_hash( { :x => 20 } )
>
>  #=> {:y=>2, :r=>10, :x=>20}
>
> What is that those semicolons do?
>
> 	Mage

these articles on symbols were written for you:

http://glu.ttono.us/articles/2005/08/19/understanding-ruby-symbols
http://onestepback.org/index.cgi/Tech/Ruby/SymbolsAreNotImmutableStrings
http://www.oreillynet.com/ruby/blog/2005/12/digging_into_ruby_symbols.html
http://www.oreillynet.com/ruby/blog/2005/12/symbols_strings_methods_and_va.html
http://microjet.ath.cx/WebWiki/2005.12.27_UsingSymbolsForTheWrongReason.html
http://www.rubycentral.com/faq/rubyfaqall.html#s6
http://moonbase.rydia.net/mental/blog/programming/ruby-symbols-explained.html