I have several modifications I'm planning to make, but in the spirit of consensus I want to propose them and attempt to get some agreement. So math developer opinions on the subject would be good.

1.) o.a.c.math.stat.distributions --> o.a.c.math.distributions

Gives this package a more "generic" position to hold more than just "stat" distributions.

2.) Like in my last emails concerning "Univariate" I would like to, (and have done so in my checkout successfully) Make the following Class changes:

interface o.a.c.m.stat.StoreUnivariate -->
           abstract class o.a.c.m.stat.DescriptiveStatistics

this actually becomes a factory class and uses Discovery to instantiate new instances of the following implementations

*default implementation*
o.a.c.m.stat.StoreUnivariateImpl -->
          o.a.c.m.stat.univariate.StatisticsImpl

*alternate implementations*
o.a.c.m.stat.UnivariateImpl -->
          o.a.c.m.stat.univariate.StorelessStatisticsImpl

o.a.c.m.stat.ListUnivariateImpl -->
          o.a.c.m.stat.univariate.ListStatisticsImpl

o.a.c.m.stat.BeanListUnivariateImpl -->
          o.a.c.m.stat.univariate.BeanListStatisticsImpl

The benefit of this is that the Alternate Implementations can all be instantiated from the o.a.c.m.stat.DescriptiveStatistics factories newInstance(...) methods. Thus alternate implementations of DescriptiveStatistics can be written as Service Providers and set in the environment/JVM configuration. We can now write SP's for other tools like Matlab, Mathematica, JLink, C++ libraries, R, Omegahat ... the list goes on and on...

Someday, I'd like to see this design extended for Bivariate Statistics and Regression Classes. Eventually for Random Number generation as well.

-Mark

--
Mark Diggory
Software Developer
Harvard MIT Data Center
http://osprey.hmdc.harvard.edu

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to