[Haskell-cafe] efficient operations on immutable structures

Christopher Howard ch.howard at zoho.com
Thu Jul 14 06:07:32 UTC 2016

Hi again all. From some online research, I understand that operations on
complex immutable structures (for example, a "setter" function a ->
(Int, Int) -> Matrix -> Matrix which alters one element in the Matrix)
is not necessarily inefficient in Haskell, because the (compiler?
runtime?) has some means of sharing unchanged values between the input
and output structure. What I am not clear on, however, is how this
works, and how you ensure that this happens. Could someone perhaps
elaborate, or point me to a really good read on the subject?

To protect my privacy, please use PGP encryption. It's free and easy
to use! My public key ID is 0x340EA95A (pgp.mit.edu).

More information about the Haskell-Cafe mailing list