вот то, что я подумал, будет правильным и полезным определением чисел фибоначчи в scala:
lazy val fibs:Stream[Int] = 0 #:: 1 #:: (fibs,fibs.tail).zipped.map(_+_)
Однако я получаю следующую ошибку:
fibs take 10 foreach println
0
1
java.lang.StackOverflowError
at scala.collection.mutable.LazyBuilder.(LazyBuilder.scala:25)
at scala.collection.immutable.Stream$StreamBuilder.(Stream.scala:492)
at scala.collection.immutable.Stream$.newBuilder(Stream.scala:483)
at...
Я полагаю, что zip-архив не работает с потоками правильно? Любые предложения о том, как заставить это работать, или почему это не работает (не следует т? ) работают?