Hey guys just found something interesting on BIP 16, i opened another thread no to get off-topic this one https://bitcointalk.org/index.php?topic=61125
I should state that i'm not biased in any way pro/against this BIP the only thing is the way it was introduced to the community opened my appetite for researching it a bit more.
Going backwards on the updates (commits) of the bitcoin source code i found this referencehttps://github.com/bitcoin/bitcoin/commit/922e8e2929a2e78270868385aa46f96002fbcff3
so thinking a bit, Gavin stated in some threads that he's been pushing this change for a few months now, but that could only be true with the scraped OP_EVAL because p2sh change is authored January 05, 2012. So when did bip 16 appeared first time ?
The BIP states 03-01-2012, https://en.bitcoin.it/wiki/BIP_0016
, with a very small deadline to "vote" for it, Feb 1, 2012, and a two week time to implement, without thoroughly testing it, on Feb 15. That deadline was familiar... yes, you guessed it, it was the OP_EVAL'shttps://en.bitcoin.it/wiki/BIP_0012https://github.com/bitcoin/bitcoin/commit/a0871afb2b1d6d358c833fd08bca2f13c840fd4d
Meh, this doesn't sound quite right in a project like this. So i digg'ed more. Looking at BIP 16 page history on the wiki i saw that the original proposal was done by user "2112" on Dec 18, 2011 and scraped by Genjix then put in it's actual form by Gavin on Jan 4, 2012.https://en.bitcoin.it/w/index.php?title=BIP_0016&action=history
Couldn't help myself to look at the original proposal and find a reason why it was changed in such a mannerhttps://en.bitcoin.it/w/index.php?title=BIP_0016&oldid=21016
The proposed changes are far-reaching and as such are not suitable for immediate implementation. They are so extensive that it is certain that a complete reimplementation will be required
The centerpiece of this proposal is the idea of “digital prospectus”: a program whose main functionality is to do perform a verification of the submitted blocks and transactions. This program will be cryptographically hashed and will become a “root prospectus hash”
At first i didn't get it but then it hit me, remembered what some guys said about bypassing the present scripting system by putting only the hash of the script and doing the actual checking in memory (stack) by executing the script code there.
The implementation will provide a means of recording the “digital prospectus amendments” which in effect will patch the original prospectus.
So someone would be able to do "amendments" on those scripts running on bitcoin clients.
In other words it would change the Bitcoin government from the democracy to the republic. The last but not least change allowed by the existence of the “digital prospectus” will be the change in scripting engine.
Man, this doesn't sound right...
If the prospectus writer decides to allow general scripting with looping she can include in the prospectus a relatively simple theorem
Now i felt shivers on my spine
Another benefit of using LISP (or any similar language) for scripting lies in its transformability. There exist a body of research of ultra-reliable computing that used “SIMD-like” and/or “Hamming distance 3 or higher” coding for error detection and correction.
Meh, so the script could be checking up it's code too
In summary this proposal encompasses three main changes: (1) explicit cryptographically signed and software-executable contract included in the root block, (2) cooperative DHT-based networking protocol that does away with IRC, dedicated ports and 4-byte identifiers, (3) general prefix script notation backed by strong syntax and semantic checkers. Because of this proposal is very far-reaching I suggest that it will be immediately placed in the dormant state. Initially we can work on clarifying its wording, but the full implementation will require a lot of discussion and research
(1) Arbitrary code that uses as support p2sh transactions
(2) Network communication between those small scripts
(3) Self aware of it's code
woot, dunno what to say
edit: cut off the part about skynet