Следующий код печатает "* 1". Что за мистификация, если я удаляю комментарий, он возвращает "* 4", что я ожидал
var max = 0
lazy val list: Stream[Int] = 1 #:: Stream.from(2)
list.takeWhile {
x =>
max = x
x < 4
}//.foreach(println)
println("*" + max)