question for #haskell coders. Say I need to gen a list of file paths, 50k of them. I can var global mylist; and f(root) to populate it. But if f is pure function we do mylist = f(root), it double memory requirement. How does pure func lang code this?