The previous commons-math interface for descriptive statistics used a paradigm of constructing classes for various statistical functions and calling evaluate(). Example
Mean mean = new Mean(); double mn = mean.evaluate(double[]) I wrote this type of code all through grad school and always found it unnecessarily bulky. To me these summary statistics are classic use cases for static methods: double mean .= Mean.evaluate(double[]) I don't have any particular problem with the evaluate() syntax. I looked over the old Math 4 API to see if there were any benefits to the previous class-oriented approach that we might not want to lose. But I don't think there were, the functionality outside of evaluate() is minimal. Finally we should consider whether we really need a separate class for each statistic at all. Do we want to call: Mean.evaluate() or SummaryStats.mean() or maybe Stats.mean() ? The last being nice and compact. Let's make a decision so our esteemed mentee Virendra knows in what direction to take his work this summer. :)