This doesn't seem like it will be type stable if the iterator yields integers. Maybe `value/1`?