On Mar 13, 2009, at 8:06 AM, Marc Heiler wrote: > Picture a small method which accepts one argument. Inside this > method is > simply a case/when menu, nothing else. The question I now have > is ... - > should the argument be coerced to string or symbol? > case argument.to_sym > vs > case argument.to_s Hard to generalize but if you coerce to a string you'll create a string that can be garbage collected. If you coerce to symbol you create a new symbol that can't be garbage collected. If your argument is coming from some external source (e.g. an HTML form) and isn't constrained in any way, then coercing to a symbol will introduce a small 'memory leak' in your program every time the case statement is executed. Gary Wright