Hello.

On Tue, 21 Jun 2016 15:52:40 +0200, Eric Barnhill wrote:
On Tue, Jun 21, 2016 at 12:45 AM, Gilles <gil...@harfang.homelinux.org>
wrote:


Mostly yes, but some utilities are used by packages that would
be good components (e.g. "o.a.c.m.distribution").  For example,
an efficient and robust root solver ("BrentSolver").


The analysis library is admirably integrated. For example, the Solvers take
UnivariateFunctions for input, but so do the interpolators.

I agree.  I have to, since I did some work there... ;-)

If we think that there are key commons-remit functions that require use of the analysis library "under the hood", than the whole thing should probably
stay in.

IMO, the guide to "Does it belong in Commons?" should include rules of
thumbs like
 * limited (even single) scope,
 * stability, and
 * usefulness beyond scientific applications and/or expert users.

Analysis is not an exotic or highly specialised library, so I don't think keeping it undermines the ability to set up an incubator/TLP with more
specialised components.

No, it doesn't; but it think that the "o.a.c.m.analysis" package falls short of the above "rules" (as you pointed out yourself by citing the variety of
interpolation routines).

Nevertheless, the single "BrentSolver" code could be copied (yes, I know that duplicate code is bad!) into a Commons "math-core" component so that
we avoid a Commons component depending on the math TLP just because it
needs one root solver.
[The one case I had in mind is the "o.a.c.m.distribution" package.  But
you may be right that it actually belongs to the TLP.  If so, problem
solved.]

On the other hand, Analysis also transposes quite easily to the TLP as a
self-contained unit.

o.a.c.m. complex.ComplexField, Quaternion, RootsOfUnity -> TLP


Not sure about "Quaternion"; could be in the "Complex" component.


Quaternion calls FastMath and Precision,

So does "Complex".

so if we are contemplating an
"alt-math" TLP component below, we have to consider how this impacts
commons-remit functions.

o.a.c.m. filter -> dormant


+0
There is an open issue:
  https://issues.apache.org/jira/browse/MATH-932


Ah. Perhaps this person could be approached as to whether he wants to
maintain this component in a new TLP?

Sure.

>> o.a.c.m. stat.frequency -> perhaps belongs with random and distribution?
o.a.c.m. stat.clustering -> dormant
o.a.c.m. stat.correlation -> array based methods to commons, Matrix
methods
to TLP
o.a.c.m. stat.descriptive, inferences, interval, ranking, regression -> Matrix methods to TLP. Array methods to commons. Statistics objects should
be divided between both after a refactoring.


Not starting a discussion about this package...
[Basic flaws in the design were identified.]


I think we can agree, to get started, to leave the stats package as it is
and keep it in commons, and worry about refactoring it later.

It is part of Commons Math as it was released in v3.6.1, based on the
"MATH_3_X" branch.

Until someone wants to tackle a refactoring and/or fix the identified
issues (cf. JIRA), it shouldn't be released again.
[Or only in a 3.6.x bug fix release.]

This POV also satisfy Patrick Meyer's requirement: it is _not_ dropped,
but won't become a standalone Commons component (unless someone wants to
maintain it as such) or a module in the TLP (unless someone wants to
fix the identified issues).

So, in this hypothetical arrangement we're discussing, I think the one question is really whether the analysis package stays in commons wholesale.

I'd favour it being part of the TLP for the reasons given above.

I have to say, I would be interested to help try to maintain it. I would
learn a lot of useful math.

Hopefully, you can still do that in the TLP.

If there is an altmath TLP component with FastMath and Precision, do
BigReal and BigFraction go there also?

According to the "single scope" rule, I'd say that "fraction" should be
in its own component.  [I'll shortly post my list of new component
candidates.]


Gilles

Eric


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to