Why did you chose a different argument order - it can be really confusing.
What is the motivation behind this?
Even the documentation You provide ( http://donejs.com/docs.html#!can.Observe.prototype.each ) is ambiguous in this matter:
The example suggests one order:
and the API section the other:new Observe({ foo: 'bar' }) .each( function( value, name ) { equals( name, 'foo' ); equals( value,'bar' );
});
can.observe.each(handler( attrName, value )) -> can.Observe
What is the motivation behind this?