+1 to the overall thrust here. This is a good thing. One item that I would like to add is that we should agree on the general direction before getting bogged down in debates on the details. Establishing some momentum in the direction of agreement might help shorten the ensuing spelling discussions.
On Wed, Jul 13, 2011 at 12:35 PM, Phil Steitz <phil.ste...@gmail.com> wrote: > To effectively integrate Greg's contributions on updating > regression, we really should refactor the multiple regression > hierarchy so that we have consistency in results reporting and data > definition. Here are some initial ideas. Better ideas and/or > patches welcome. > > 0. Deprecate MultipleLinearRegression (basically being replaced). > > 1. Create a LinearRegression interface with what is now in > UpdatingMultipleLinearRegression, minus the addObservation methods. > > 2. Define UpdatingLinearRegression extending LinearRegression > (adding back addObs*). > > 3. Define FixedLinearRegression extending LinearRegression, adding > the new*Data data definition methods now in > AbstractMultipleLinearRegression. > > 4. Deprecate AbstractMultipleLinearRegression. > > 5. Add AbstractFixedLinearRegression implementing > FixedLinearRegression and providing default impls for the new*Data > methods (taken from AbstractMultipleLinearRegression) > > 6. Modify OLSMultipleLinearRegression and > GLSMultipleLinearRegression to extend AbstractFixedLinearRegression, > possibly preserving MultipleLinearRegression implementation until 4.0. > > 7. If there is value to an abstract parent for the updating impls, > add this implementing UpdatingLinearRegression; otherwise just > implement directly. >