One thing that could be very useful to build more decentralized applications is the capability to send multiple transactions simultaneously. This is easy to implement, we just attach a transaction after the other has finished, in deserialisation/serialisation steps. When executing, the Verify method will be called in all "parts" of the transaction, and if one fails, the whole process fails. This simple feature can creating amazing things, such as these examples below.
Here comes Bob:
His job is simple, he creates/signs an invocation I3 of 100 token Q1 from ABC to WYK (including scripthash I1 and I2). He also creates/signs an invocation I4 (mentioning scripthash I3):
PUSH ABC
He submits transaction in the following order: I3 + I1 + I4 + I2.
If scripts are executed in this order, both parts will be happy and exchange their NEP-5 tokens!
Obviously, there can be security implications on leting Bob chose the order of transactions, so probably Alice would include another script to finally sign or perform a multisig with Bob of the whole process (this would require another attribute like Shared Script). Note that this is slightly different process on how current DEX are proposed to work, and probably there are much better ways to do that, I'm just reinforcing how powerful Neo network can be :)
I'm not sure whether we should implement this kind of features since the UTXO maybe removed from NEO 3.0.
I really forgot to mention that Erik, this can be a plan for something on Neo 3.0, no rush for now.
Closed because there is no UTXO in neo 3
Most helpful comment
I'm not sure whether we should implement this kind of features since the UTXO maybe removed from NEO 3.0.