"The type of the value that indicates that 
 an `Iterator` is exhausted and has no more 
 values to return."
see (`interface Iterator`)
shared abstract class Finished() of finished {}

"A value that indicates that an `Iterator`
 is exhausted and has no more values to 
 return."
see (`interface Iterator`)
shared object finished extends Finished() {
    shared actual String string => "finished";
}