> Pure storage is used for certain data in the preloaded standard Lisp files—data that should never change during actual use of Emacs.
> -- http://www.gnu.org/software/emacs/manual/html_node/elisp/Pure-Storage.html

Reading this, I don't know if we want to use it here.  Why you suggest purecopy?  For nested copy?  Then why not something like `(mapcar 'copy-sequence process-environment)`?