The ReplaceAlias command replaces alias a1 with an alias referring to object a2 (or to the object referred to by a2).
[ x a1 y ], a1 -> [ a b ], a2 -> [ c d ]
becomes :
[ x a2_alias y ], a2_alias -> a2_object = [ c d ] scratch : a1, a1 -> [ a b ]
After undoing :
[ x a1 y ], a1 -> [ a b ], a2_object = [ c d ] zombie : a2_alias
After redoing :
[ x a2_alias y ], a2_alias -> a2_object = [ c d ] scratch : a1, a1 -> [ a b ]