Unfortunately, I don't think there's getting away from just understanding value semantics to get the correct and/or performant behavior.