Build up a type hierarchy of hypothesis tests?
For this package it may not be that useful, but perhaps there's still value in having a hierarchy of hypothesis tests. Something like:
abstract HypothesisTest
abstract ParametricTest <: HypothesisTest
abstract NonparametricTest <: HypothesisTest
There may not be that much use to this, but it's interesting to me as a potential way to organize the suite of hypothesis tests I'd like to see Julia give access to.
I don't see any harm in this, but also don't see how you'd actually make use of the hierarchy. Are there cases where one would want to specialize on parametric/nonparametric test types? Single inheritance also imposes some limitations on the use of this as a means of categorizing tests. For example, we could also have abstract types like TwoSampleTest, PairedDifferenceTest, GoodnessOfFitTest, etc., but these encompass both parametric and non-parametric tests.
@johnmyleswhite @simonster
Suppose I wanna conduct a goodness of fit test. There exist many different tests w/ different properties, some have better power, while others have better size...
subtypes(GoodnessOfFitTest) can help me automatically find all relevant tests
More generally maybe it could be good to have a test() or HT() function similar to fit?
This can allow something like:
