That makes sense. In fact, I suspected the answer had to do with late binding. That's why Nextstep and Objective-C was IMHO the best development environment. (Smalltalk, at least Squeak, UI development is still a bit rough but I can see the potential for the same ease-of-development).
From: Mark Guzdial guzdial@cc.gatech.edu
Dan Olsen talks about this in his new book on "Developing User Interfaces" (Morgan-Kaufman, 1998). I don't think I grok all the subtleties, but I'll try to relate the story. The self-reflective and late-binding nature of Smalltalk allows you to create views that are more de-coupled from their models. For example, when a textbox sends #getText to its model, it doesn't care what the model is, as long as it can respond to getText -- you can even swap the model at run-time, and as long as the message is answerable, it all works. Olsen contrasts this with C/C++ where the compiler requires the model and view to be linked together at compile time, the types have to match, etc. Java can do this de-coupled model-view, too, but it had to invent (overly-complex, IMHO) inner classes to make it work.
Jim