[Haskell-cafe] How to ensure optimization for large immutable vectors to be shared w.r.t. Referential Transparency