Hi Matt,
Thanks for the reply. What you say makes sense; instead of keeping around references to the component model instances, I would just call composite.right.guess and .left.guess accordingly.
But the crux of my question is: suppose that neither guess method of the component models makes sense when the data comes from a composite model, so a more general guess is needed. If I were making a new model class, I could of course override the Model.guess method. But since the composite model is made by composite = model1 + model2, for example, there's no opportunity to add a .guess method to composite. I suppose I could create a custom subclass of CompositeModel, complete with the custom guess function, and then manually instantiate it with left=model1, right=model2, op=add, or something, but that seems inelegant. Just wondering if there was a cleaner solution. Probably just calling .right.guess and .left.guess will work in most cases.
Thanks again,
Glenn