The options_for_select is invoking map(&:to_s) in loops. When options_for_select is invoked with many options, the memory impact of map(&:to_s) is more than necessary.
While map(&:to_s) stuff has been optimized, it is not free and should yield way to performance.
peformance trumps syntactical sugar
Do you have some benchmarks showing the impact of this on Ruby 1.9? It's my understanding that &:symbol is essentially free under 1.9, which is the primary target for master.
Ah .. no, I have not made it to 1.9 yet .. still on 1.8.7. Should I submit this for the 3.0.7 branch instead?
Yeah, that'd be a better fit.