Bitcoin has reserved words like OP_RESERVED1 that are only valid in an unexecuted if branch. How are those words intended on being used in the future to perform some actual operation?
I understand how NOP opcodes can be modified to provide new constraints to the transaction in a soft-fork compatible way. However, RESERVED opcodes seem to not allow for soft-fork compatible modification. Is this the case, or is there some trick I'm not aware of to allow their meaning to be updated in a soft fork? Or perhaps a hardfork is the only way to use them?