@theZerg
Must have missed this one first time around. Very informative. Are you in favour of restoring all the original opcode functionality?
https://medium.com/@g.andrew.stone/bitcoin-scripting-applications-decision-based-spending-8e7b93d7bdb9
I like these two new BUIPS 77/78. I'm generally in favour of freeing all the original OP_Codes. It would be a great way to see Satoshis vision expanded and further separate Cash from the paralysed legacy chain.
My general understanding is that various OP_Codes were disabled early on because they introduced a complexity that had not been fully tested. (It appears Satoshi was aware of the limits of his own abilities) I think it would be a great initiative for BU, to systematically go through these original ideas and give them some serious testing/reworking, with a view to slowly redeploying them again.
#Free the OP_CODES
#'let's make Bitcoin programable money again'
ref, copy paste from slack:
OP_CAT 126 0x7e x1 x2 out Concatenates two strings. disabled.
OP_SUBSTR 127 0x7f in begin size out Returns a section of a string. disabled.
OP_LEFT 128 0x80 in size out Keeps only characters left of the specified point in a string. disabled.
OP_RIGHT 129 0x81 in size out Keeps only characters right of the specified point in a string. disabled.
OP_INVERT 131 0x83 in out Flips all of the bits in the input. disabled.
OP_AND 132 0x84 x1 x2 out Boolean and between each bit in the inputs. disabled.
OP_OR 133 0x85 x1 x2 out Boolean or between each bit in the inputs. disabled.
OP_XOR 134 0x86 x1 x2 out Boolean exclusive or between each bit in the inputs. disabled
OP_MUL 149 0x95 a b out a is multiplied by b. disabled.
OP_DIV 150 0x96 a b out a is divided by b. disabled.
OP_MOD 151 0x97 a b out Returns the remainder after dividing a by b. disabled.
OP_LSHIFT 152 0x98 a b out Shifts a left b bits, preserving sign. disabled.
OP_RSHIFT 153 0x99 a b out Shifts a right b bits, preserving sign. disabled.
OP_2MUL 141 0x8d in out The input is multiplied by 2. disabled.
OP_2DIV 142 0x8e in out The input is divided by 2. disabled.