Functional programming in groovy and lazy data structures