scalaz
Simple call-by-need (i.
Examples showing the use of Unapply to reduce the need for type annotations
Character/Line/Word Count from "The Essense of the Iterator Pattern".