Lots of companies do this already, but only for procedures, not class-layouts. The PS3 encourages a "job based" programming model, where your procedures are more separate from your data-layouts than in traditional OOP, so it's not too hard to shoe-horn in code-reloading to systems written this way.
I would be interested to see this run on consoles, I can imagine it being a major productivity boost if developers can make on-the-fly changes to code running on a console.
Reloading a DLL (equivalent) and changing some function-pointers is simple. It's only the reloading of class-layouts (and the implied serialization/deserialization/pointer-patching) that complicates matters.
As far as I'm concerned, every engine should already be doing this for their (HLSL or equivalent) shader code and any "script" code (e.g. Lua) too ;)