// "IProbabilistic" - a probabilistic runnable // TODO: don't extend Runnable? sinterface IProbabilistic extends Runnable { public void setScheduler(IProbabilisticScheduler ps); public IProbabilisticScheduler scheduler(); default void run(IProbabilisticScheduler ps) { setScheduler(ps); run(); } }