2 ms·
Writing bug free software is extremely difficult, as anyone who knows a little about software can tell you. When software bugs can cost people millions and you
by nas 10y ago
Writing bug free software is extremely difficult, as anyone who knows a little about software can tell you. When software bugs can cost people millions and your system is built on the idea of people writing lots of software contracts, there is a problem.
I think the vision is bad. The idea of software enforced contracts is a neat idea and someday we will have it. Ethereum is not going to be it, IMHO. Their developers want to handwave the hard problems aside and brag about how innovative they are. E.g. call for research on tools to check for bugs in contracts, meanwhile their programming platform is absolutely dreadful for writing bug free code.
A better vision would be to use all the software correctness research that been done over the last 20 years. Probably use a function language that makes reasoning easier. Maybe something like Lamports TLA+ to specify behavior. I would think you want a small set of contract templates that people can use. They would be as simple as possible and heavily reviewed.
I have read the DAO is on the order of 1,000 lines of code. I'd be willing to bet money there are more bugs remaining to be found. More forks in the future?
- mannykannot 10y agoThe state of software verification is not yet there; if it were, there would be a lot of use - and corresponding job demand - in aerospace, finance and wherever security matters. Almost everyone who is enthusing about software-enforced contracts is implicitly assuming that someone else is going to do the verification, because they could not do it themselves even if they wanted to.