This is so simple that I can't believe it caught me.

def meth(id, options = "options", scope = "scope")
  puts options
end

meth(1, scope = "meh")

-> "meh"

I tend to use hashes for argument options just because it was how the herd did it– and it is quite clean. I thought it was the standard. Today, after about 3 hours of bug hunting, I traced down an error to this gem I happen to be using that assumes named parameters will be honored. They are not.

So, my question is this: Are named parameter officially not honored in Ruby (1.9.3), or is this a side effect of something I'm missing? If they are not, why not?

Edit
Report