is a change that cause evaluate the same expression to possibly have a different result
is a change that cause evaluate the same expression to possibly have a different result
modification of some kind of state caused by function calls  ex:  changing a variable value