Lazy Data Streams

Lazy Data Streams is a mix between an iterator and a collection. It can be expanded by lazy calculation of an extra member.

History

Lazy Data Streams are used in different functional languages e.g.

  • Haskell
  • Scala
  • Scheme

The advantage of a lazy data stream is

  • That you can use functional techniques on possible infinite streams of data
  • You still have access to previous elements in a calculation by an iterator
  • You only calculate the necessary elements

Example of Lazy Data Streams

  • Lazy Data Streams to calculate all Fibonacci number.
  • All even Fibonacci number.
  • All even Fibonacci number who's sum is less than 100.