News for hackers. Stuff that matters.
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by lawn on Monday November 29, 2021 @11:36AM (#29381836)
> They have the best balance of decentralization, scalability, and security.

Using a Turing complete scripting language means it does not have a good scalability balance.

Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by fallat on Monday November 29, 2021 @12:43PM (#29382712)
Because execution is guaranteed to stop, it is technically not turing complete.
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by grandphuba on Monday November 29, 2021 @12:57PM (#29382894)
Turing completeness assumes infinite resources and just concerns itself with the ability of a system of rules to simulate a Turing Machine.
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by woah on Monday November 29, 2021 @01:01PM (#29382925)
Execution of any computer program is guaranteed to stop
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by MrYellowP on Monday November 29, 2021 @01:11PM (#29383060)
What's the Halting problem?
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by coppuh on Monday November 29, 2021 @01:13PM (#29383102)
while(True) print("That doesn't seem quite right...");
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by mmdoda on Monday November 29, 2021 @04:12PM (#29385344)
What is the heat death of the universe?
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by serverholic on Monday November 29, 2021 @11:39AM (#29381876)
Perhaps you could explain this hot take?
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by skulk on Monday November 29, 2021 @11:48AM (#29381996)
Probably something related to this: https://en.wikipedia.org/wiki/Rice%27s_theorem

The amount of brainpower needed today to _prove_ that a smart contract does exactly what is intended doesn't scale to a whole financial system. The existing financial system gets away with having "oracles" called judges (in a court). I think we can graft this onto Ethereum by accompanying each smart contract with some natural language that can be interpreted as its "intent", and in the event any bug in the code violates this intent we can bring in a human judge who can decide whether to fork or not.

On the other side, I think any sufficiently strong theorem-proving strategy will resemble simply limiting yourself to a non-Turing-complete subset of the language.

Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by serverholic on Monday November 29, 2021 @12:14PM (#29382351)
If a smart contract is small enough in scope then eventually you can be reasonably sure it’ll behave the way it’s supposed to.

With enough of these contracts you start to build a financial operating system that can be relied upon.

However I do think the human component is underrated in the crypto space. I imagine the future will consist of humans being injected into the financial operating system itself instead of bypassing it like you describe.

Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by skulk on Monday November 29, 2021 @12:23PM (#29382470)
Once you start combining "small" contracts (e.g. they call into each other), you have a large program one way or the other. The combinatorial explosion pretty much guarantees there will be some input combinations that lead to unexpected consequences, even if you claim to know everything there is to know about each particular component. If there's a way to get around this, I'd be very, very interested in reading about it.
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by User23 on Monday November 29, 2021 @12:52PM (#29382836)
Predicate transformer semantics[1] are an approach that would work with sufficient discipline. Given that the cost of a bug is potentially losing everything, maybe smart contracts will finally be impetus developers need to learn enough of the predicate calculus to compose programs that behave as specified.

That's just half of the problem though. The other half is knowing that your specification doesn't admit any unpleasant behaviors. I expect some combination of KISS and model checking is appropriate.

[1] https://en.wikipedia.org/wiki/Predicate_transformer_semantic...

Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by skulk on Monday November 29, 2021 @02:54PM (#29384396)
Thanks for the reference. I'm currently studying type theory and the Curry-Howard correspondence, and this seems to be an interesting bridge between that and traditional imperative programming.

As for the second part, do you know off the top of your head if [not checking whether the proved behavior admits abuse] was the issue that resulted in "millions of dollars" worth of coins being stolen in the various debacles we hear about? I have an inkling that almost every time, it's actually this.

The only one I ever looked into was the 2016 DAO[1] hack and I didn't get the impression that it was because they didn't check their code for spec violations, rather they just designed a system that allowed someone to do something bad. I have no idea how we can prevent this, even with all the power of theorem provers.

[1]: https://en.wikipedia.org/wiki/The_DAO_(organization)

Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by User23 on Monday November 29, 2021 @08:50PM (#29387832)
It sounds like you might appreciate Predicate Calculus and Program Semantics[1] which is a rigorous formal treatment of the subject. Dijkstra's earlier work, A Discipline of Programming[2] lacks mathematical rigor, but is still quite pragmatic and is arguably a much gentler introduction to the subject. It also focuses more on real-world use cases.

Like most of his work, the general theme is "how can we avoid making a mess of things unnecessarily?" Avoiding needless complexity is clearly the programmer's greatest challenge.

[1] https://www.goodreads.com/book/show/3144463-predicate-calcul...

[2] https://www.goodreads.com/book/show/2276288.A_Discipline_of_...

Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by root_axis on Monday November 29, 2021 @01:28PM (#29383300)
Why not just use a centralized system if a human judge is the arbiter for disputes with respect to the operation of the system?
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by skulk on Monday November 29, 2021 @03:29PM (#29384831)
Nobody has yet convinced me that the effort spent on blockchain smart contract whatever would not have been better spent un-pretentiously re-writing traditional banking infrastructure with lessons learned in the last 40 or so years.
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by serverholic on Monday November 29, 2021 @03:59PM (#29385213)
Good luck with that. Myself and others have lost hope that the current system can ever change. You're never going to convince the people in power to rewrite the current system.
Re:Vitalik Buterin Proposes New EIP to Tackle Ethereum’s Sky... by lawn on Tuesday November 30, 2021 @01:20AM (#29389490)
Why is this a hot take?

It means that a single transaction can be very computationally expensive, compared to a Bitcoin transaction that is very simple, meaning that it's exponentially harder to scale Ethereum than to scale Bitcoin.