This definitely adds a bit of overhead (this has to be relativized though, it's outside the loop). However it's much more convenient to use. Having "$context", was definitely confusing. What is context? Data as array? an object?...

In the case of HydrationContext it's actually a big win as previously we had only the $data context as param, now we have the hydrated object too (very useful for update for instance)