Precursor stuff for value mutation implementations