Dear Mark,
Being someone that is a purest at heart when it comes to separating business logic, i.e. the model, from its interface, i.e. a view and controller, here is an alternative to Tim's example. It's a little more work, but it keeps the LedMorph more of an "interface" object by making it pluggable.
What does "pluggable" mean? And what does "dependent" mean? In your CounterApplication, you create a "Pluggable" led display, then you put the model in a variable of the display (counter) and then you make the display a dependent of the the model.
What is it? How can an object be a "dependent" of one of its sub-objects?
Thanks Adriano
The counter object is a model object, and the counting application is a cooridnator object in that it creates the counter and pluggable led morph objects and connects them up.
It's not the best code in the world, but it gets the point across.