[ 
https://issues.apache.org/jira/browse/STATISTICS-71?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17739368#comment-17739368
 ] 

Gilles Sadowski commented on STATISTICS-71:
-------------------------------------------

Is {{DoubleStorelessUnivariateStatistics}} to be used as a "marker" interface?  
If so, what is the use-case?
E.g. is "Storeless" a required part of the name?  Or is it an "implementation 
detail"?
It seems that alternative (internal) implementations could be built:
{code}
public class StatisticsBuilder {
    /**
     * @param storeless Whether the instance should be storeless.
     * @return the statistics.
     */
    public static Mean createMean(boolean storeless) {
        return storeless ? StorelessMean.create() : PlainMean.create();
    }
}
{code}


> Implementation of Univariate Statistics
> ---------------------------------------
>
>                 Key: STATISTICS-71
>                 URL: https://issues.apache.org/jira/browse/STATISTICS-71
>             Project: Commons Statistics
>          Issue Type: Task
>          Components: descriptive
>            Reporter: Anirudh Joshi
>            Priority: Minor
>              Labels: gsoc, gsoc2023
>
> Jira ticket to track the implementation of the Univariate statistics required 
> for the updated SummaryStatistics API. 
> The implementation would be "storeless". It should be used for calculating 
> statistics that can be computed in one pass through the data without storing 
> the sample values.
> Currently I have the definition of API as (this might evolve as I continue 
> working)
> {code:java}
> public interface DoubleStorelessUnivariateStatistic extends DoubleSupplier {
>     DoubleStorelessUnivariateStatistic add(double v);
>     long getCount();
>     void combine(StorelessUnivariateStatistic other);
> } {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to