Streamshould just be a copy-paste of the 2.12 one, with whatever changes are needed to fit it into the new design.
Streamwas reimplemented from scratch. We only had the new
LazyListat first and because
Streamis such a special case in the old collections due to the laziness it appeared easier to modify
LazyListthan to port the old code. I don't remember any particular difficulties doing that, it was indeed quite easy. If you want to replace
LazyListwith a completely new impementation I'd factor the shared parts in
Streamand use that for 2.13.
LazyListto have a
fromIteratormethod, on top of