Again, I don't know Haskell, so from the outside it looks like much the same as the float -> complex conversion.
https://www.well-typed.com/blog/2015/05/parametricity/
Again, I don't know Haskell, so from the outside it looks like much the same as the float -> complex conversion.