@Test
public void evaluateSerial() {

	final ISeq<Phenotype<DoubleGene, Double>> phenotypes =
		Genotype.of(DoubleChromosome.of(0, 1)).instances()
			.limit(100)
			.map(gt -> Phenotype.<DoubleGene, Double>of(gt, 1))
			.collect(ISeq.toISeq());
	phenotypes.forEach(pt -> Assert.assertTrue(pt.nonEvaluated()));
	final Evaluator<DoubleGene, Double> evaluator =
		new ConcurrentEvaluator<>(gt -> gt.gene().doubleValue(), Runnable::run);
	final ISeq<Phenotype<DoubleGene, Double>> evaluated = evaluator.eval(phenotypes);
	evaluated.forEach(pt -> Assert.assertEquals(pt.genotype().gene().allele(), pt.fitness()));
}