Author [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] Topic: Ethereum: The Ultimate Smart Contract and Decentralized Application Platform  (Read 4146 times)

0 Members and 1 Guest are viewing this topic.

Offline vikram


Does anyone know more or has any thoughts about this project:

http://vbuterin.com/ethereum.html

Offline toast

IMO this sort of project should NOT be using a turing-complete language as the foundation. Bitcoin's scripting language was designed to be not turing-complete for a reason. We want our protocol language to be good for correctness proofs, not malware.
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline bytemaster


IMO this sort of project should NOT be using a turing-complete language as the foundation. Bitcoin's scripting language was designed to be not turing-complete for a reason. We want our protocol language to be good for correctness proofs, not malware.

Agreed.


Sent from my iPhone using Tapatalk
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline arcke

  • Full Member
  • ***
  • Posts: 115
    • View Profile
    • Diaspora
IMO this sort of project should NOT be using a turing-complete language as the foundation. Bitcoin's scripting language was designed to be not turing-complete for a reason. We want our protocol language to be good for correctness proofs, not malware.
What was the reason? Reasons I can imagine are simplicity and efficient encoding or speed. Are there security considerations?

I imagine a protocol in a high-level language could be compiled to ethereums script language. This would still allow for languages which are more suitable for correctness proofs.
OpenPGP: 0x22d7e9cc35375665
PTS - PawnbhoiXhmkrKJEPAsCiwkpP81nRXJGTD
Diaspora profile - https://pod.orkz.net/u/arcke

Offline bytemaster

IMO this sort of project should NOT be using a turing-complete language as the foundation. Bitcoin's scripting language was designed to be not turing-complete for a reason. We want our protocol language to be good for correctness proofs, not malware.
What was the reason? Reasons I can imagine are simplicity and efficient encoding or speed. Are there security considerations?

I imagine a protocol in a high-level language could be compiled to ethereums script language. This would still allow for languages which are more suitable for correctness proofs.

For starters, the rules of a block chain are very hard to change after launch and even bitcoin has not turned on the full power of their scripts.  If bitcoin is not comfortable with their scripts after 5 years of evaluation, this platform will have a much harder time proving its security model in a timely manner.

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline phoenix

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
IMO this sort of project should NOT be using a turing-complete language as the foundation. Bitcoin's scripting language was designed to be not turing-complete for a reason. We want our protocol language to be good for correctness proofs, not malware.
What was the reason? Reasons I can imagine are simplicity and efficient encoding or speed. Are there security considerations?

I imagine a protocol in a high-level language could be compiled to ethereums script language. This would still allow for languages which are more suitable for correctness proofs.

For starters, the rules of a block chain are very hard to change after launch and even bitcoin has not turned on the full power of their scripts.  If bitcoin is not comfortable with their scripts after 5 years of evaluation, this platform will have a much harder time proving its security model in a timely manner.

What kind of powers does bitcoin still have in their scripts that they haven't fully turned on yet?
Protoshares: Pg5EhSZEXHFjdFUzpxJbm91UtA54iUuDvt
Bitmessage: BM-NBrGi2V3BZ8REnJM7FPxUjjkQp7V5D28

Offline bytemaster

IMO this sort of project should NOT be using a turing-complete language as the foundation. Bitcoin's scripting language was designed to be not turing-complete for a reason. We want our protocol language to be good for correctness proofs, not malware.
What was the reason? Reasons I can imagine are simplicity and efficient encoding or speed. Are there security considerations?

I imagine a protocol in a high-level language could be compiled to ethereums script language. This would still allow for languages which are more suitable for correctness proofs.

For starters, the rules of a block chain are very hard to change after launch and even bitcoin has not turned on the full power of their scripts.  If bitcoin is not comfortable with their scripts after 5 years of evaluation, this platform will have a much harder time proving its security model in a timely manner.

What kind of powers does bitcoin still have in their scripts that they haven't fully turned on yet?

As far as I know you cannot do cross-chain-trading without support of one of the top mining pools because only "standard" transactions can be broadcast and included right now.  If you want to use the 'full power' you must mine your own blocks which is  impractical.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline luckybit

Does anyone know more or has any thoughts about this project:

http://vbuterin.com/ethereum.html

I've been looking at it over the past few days.
It's extremely flexible, powerful, modular and potentially secure. These are the features he has over Bitshares and Mastercoin.

The main key to whether or not it will be a success will be based on how easy or difficult the scripting layer is. My opinion on it is that they should go the Python route which is to have a virtual machine with a very easy to use scripting language on top. If we have to write assembler code that might be okay but it could mean fewer people can take advantage of the extreme flexibility and turing completeness.

Python is turing complete and simple. If we could have something simple like that or something simple like the Linux bash scripting then it will work extremely well and probably become a success. If the virtual machine is designed to make it extremely cross platform so it can run on anything then it could be like python in that aspect that it can be ported to everything.

C++ in my opinion has its limits. It's hard to port C++, hard to debug it, and it's a compiled language which means you have to worry about all the security issues yourself. Python code is easier to secure because there is a lot less syntax, it's easier to debug, it's more portable, but it's interpreted so it's also not as efficient or fast as compiled languages which are optimized specifically for the hardware.

I await the release of Ethereum but those are my thoughts on it based on my current understanding of what it wants to do.

IMO this sort of project should NOT be using a turing-complete language as the foundation. Bitcoin's scripting language was designed to be not turing-complete for a reason. We want our protocol language to be good for correctness proofs, not malware.

Python is turing complete but also one of the easiest languages to write secure code in because the syntax is simple and beautiful. I think if the syntax for the turing complete scripting language is simple, and if it's easy to see what it does, then it's very hard to write malware. Interpreted scripting languages in my opinion are a necessity for contracts and should not be limited because of a fear of difficult auditing. Instead we should make the scripting language so simple and so well designed that you don't have these issues. There also has to be a standard code base which people can use which is secure by default.

This is something which in my opinion can be built, has to be built, but will not at all be easy to build. And from what I saw on the site they want to use some sort of assembler type code which is not going to be easy to deal with. On the other hand its using a virtual machine so if you do process separation, isolation, sandboxes and other techniques you can prevent malware.

I confident that if designed with security in mind malware can be prevented. I don't think Bitcoin was designed as well as it could have been and was hacked together in a lot of ways using a compiled language such as C++ which while efficient is often difficult to port, difficult to debug, difficult to secure.
« Last Edit: December 30, 2013, 04:16:08 AM by luckybit »
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline bytemaster

The python port of BitMessage to Mac OS X was very difficulty and buggy.

As someone who does cross-platform development, C++ is by far the best choice.  You discover your bugs at compile time and have the power to easily tweak things for each target.  With other systems you discover your bugs at runtime and often are helpless to fix the platform specific quirks that result.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline ruletheworld

  • Full Member
  • ***
  • Posts: 162
    • View Profile
    • BTC Geek
As someone who does cross-platform development, C++ is by far the best choice.  You discover your bugs at compile time and have the power to easily tweak things for each target.  With other systems you discover your bugs at runtime and often are helpless to fix the platform specific quirks that result.
+1
PTS: PYRqARWMGQ1PeZvjJM6iWJxf2ouwYcueHF
BTC: 1NeRoAKp137GTDUEBaonbu5BUGPN17Xw5n
http://btcgeek.com

Offline luckybit

The python port of BitMessage to Mac OS X was very difficulty and buggy.

As someone who does cross-platform development, C++ is by far the best choice.  You discover your bugs at compile time and have the power to easily tweak things for each target.  With other systems you discover your bugs at runtime and often are helpless to fix the platform specific quirks that result.

Of course this is your opinion and you're right that Bitmessage is buggy. This is why I said there has to be a secure standard library base made by programmers who know how to write secure code. From what I see of Vatalik Buterins design spec he knows how to design secure code. It's modular, it's flexible, it utilizes virtual machines, it could probably do process separation and sandbox techniques to limit the risks of a bug doing any real damage.

I favor something like python for these reasons:
I think when you use simple to read code you have more eyes who can debug it.
I think when there is a lot less syntax you have less lines of code to debug.
I think when code is beautiful it is a lot easier to maintain.

So despite the problems with Bitmessage those are not problems inherent in the design of Python but problems inherent in Bitmessage and the style they chose to design and code it. I will accept we disagree on this and it's really a subjective matter anyway. If you're most comfortable with C++ then of course for you it's the best, but I think there are a lot more people who can debug/audit a Python script with maybe 50 lines of code than a C++ full fledged compiled application with hundreds of lines of code.

« Last Edit: December 30, 2013, 06:15:44 AM by luckybit »
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline charleshoskinson

  • Newbie
  • *
  • Posts: 9
    • View Profile
There is nothing wrong with choosing a Turing complete scripting language. As for the languages, there are three reference clients: c++, python and javascript. And there are two cryptographer on the project: charles hoskinson and dr. Adam back.

The team behind ethereum is now over 20 people in five countries. More details coming soon.

Offline jbutta2k13

  • Full Member
  • ***
  • Posts: 51
    • View Profile
I hope that the name changes...Anyone who is an experienced  investors like Warren Buffet, Ben Graham, etc branding is one of the single most important ideas in marketing new product/services/ecosystems. Just look at Coca-cola, Pepsi, Doritos, FEDEX, Windows, Linux, iPOD/PAD/TOUCH, the "Cloud".  If you want the this currency to be an critical part of everyday life, make it a sound like it can be used every day.    If you want to be taken serious, change the name to something simple and captivating.  I really hope the space listen to this.  I have made other posts before and hope that someone listens and makes crypto much more user-friendly for the masses and well as invoking simple branding concepts to attain wider system acceptance.


Offline luckybit

I hope that the name changes...Anyone who is an experienced  investors like Warren Buffet, Ben Graham, etc branding is one of the single most important ideas in marketing new product/services/ecosystems. Just look at Coca-cola, Pepsi, Doritos, FEDEX, Windows, Linux, iPOD/PAD/TOUCH, the "Cloud".  If you want the this currency to be an critical part of everyday life, make it a sound like it can be used every day.    If you want to be taken serious, change the name to something simple and captivating.  I really hope the space listen to this.  I have made other posts before and hope that someone listens and makes crypto much more user-friendly for the masses and well as invoking simple branding concepts to attain wider system acceptance.

It's a protocol not a product. Voice over IP, TCP/IP, UDP, FTP, SMTP, most people don't have a clue what any of that stands for but they use it every day.

I think one of the problems I see in this space is that people listen to product advertisers rather than trying to focus on making the best protocol. If the protocol is the best then anyone can rebrand it later on. When you use gmail are you aware that you're using IMAP? Do you even know what that is?

The name of the protocol really does not matter if its open source. If you think that Ethereum is a bad name then just rebrand it and compile it with a better name. It's open source which means anyone can rebrand it so why are we going to follow the paradigm of closed source software? How many Linux distributions are there? If you don't like the name Redhat then there is Ubuntu, Suse, Slackware, Gentoo.

Focus on making the best Ethereum possible and design it in a way so that people can make Ethereum distributions just like Linux, Gnutella or Bittorrent. That way it's easily rebranded if it does not catch on.

https://en.wikipedia.org/wiki/Gnutella
https://en.wikipedia.org/wiki/Justin_Frankel
http://www.askjf.com/?q=2367s
« Last Edit: January 01, 2014, 12:06:08 AM by luckybit »
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline charleshoskinson

  • Newbie
  • *
  • Posts: 9
    • View Profile
Quote
Focus on making the best Ethereum possible and design it in a way so that people can make Ethereum distributions just like Linux, Gnutella or Bittorrent. That way it's easily rebranded if it does not catch on.

That's exactly what's going to happen and it's incredibly exciting.

 

Google+