Another way to look at it is a symbol is it is an emnumerated scalar.

You could have

cavesize = 345
my_dungeon.start(cavesize)

However if caves are only ever Small, Medium and Large, then you can
represent that finite set of options by passing :smallcave, :mediumcave
or :largecave.

A symbol can therefore more closely represent the logic of the problem.

-- 
Posted via http://www.ruby-forum.com/.