3 ms·
The biggest difference from Ethereum is not the lack of Turing Completeness but: > Maintain Bitcoin’s design of self-contained transactions whereby programs do
by thinkloop 9y ago
The biggest difference from Ethereum is not the lack of Turing Completeness but:
> Maintain Bitcoin’s design of self-contained transactions whereby programs do not have access to any information outside the transaction.
This drastically changes the use cases, and may keep both chains complimentary.
- nullc 9y ago> This drastically changes the use cases, I don't agree. It is possible to keep the interaction pure without any practical loss of functionality-- a transaction still has access to its own casual state, in particular using a technique we call covenants (which is mentioned in the paper). This kind of controlled state management avoids the destruction of scalablity (no caching, no parallelism, no out of order processing, no skipping activity when overloaded) that we've seen in other systems. Using covenants Russel was, in earlier work, able to implement "Vaults"-- a kind of useful smart contract some have described as impossible in Bitcoin-- in the elements implementation of Bitcoin Script (it uses opcodes that are currently disabled in Bitcoin) with no changes to any of the system's state management. Part of the overall intent with Simplicity is to make this kind of approach efficient and accessible.