If you have a lot a techniques like zero-knowledge proofs, homomorphic computations, multi-party computation, indistinishability (sic) obfuscation (not quite practical yet), and various threshold schemes - you will quickly realize we could basically already do everything that Ethereum was designed for from the start. In fact - a lot of the new crypto techniques make it possible to scale DAC applications even better than what blockchains would allow since you can implement a lot of crypto-application protocols outside of the blockchain and keep only the hash-locked payments on the chain (which I honestly think is preferable.)
It just seems to me like Vitalik largely invented Ethereum because he didn't want to bother messing around with all the crypto-hacking that's required to implement self-enforcing, autonomous contracts (which is half the fun.) My biggest problem with this is people act like this isn't possible with Bitcoin when we had working smart contracts (and special coins for smart contracts) before Ethereum even existed. Interestingly enough - there's even ways to make the answer to any computable problem the keys to unlock a Bitcoin payment which means if you structure your crypto-protocol right you can essentially implement any self-paying, and self-running corporation as a never-ending complex chain of future problems.
(I would speculate that it's even possible to build a universal turning machine on top of any bitcoin-style blockchain that can compute any problem off-chain and allow these computations to be proven and self-enforcing but that is a topic for future research.)