-
What does the EVM do?
EVM is a special application that enables to read and execute the smart contract code in ethereum network in such a way that all CPUs in the network are in consensus. It runs on top of the hardware of each node within the network. -
What is the format of the instructions that the EVM can read?
It reads the byte code. -
What is the relationship between the programming language Solidity and Bytecode?
Solidity code is compiled into byte code using compiler so that EVM can read it and run based on it. -
Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoinâs own programming language, Script, is not Turing complete and can execute only very simple logic smart contracts. Ethereum uses a different programming language Solidity that is Turing complete. -
What is a Turing Complete programming language?
It means, that in theory, it can solve mathematically any problem that might occur. It also allows loops in the code, meaning that any instruction can be repeated multiple times.
-
The EVM is like a referee, in the sense that it, overseeing the code and making sure it is valid/non-malicious. After the lines of code have passed inspection they are sent to the CPU for execution.
-
Bytecode
-
Developers code using Solidity, which is turned into Bytecode after it is compiled.
-
Bitcoin is not Turing complete
-
A language that can solve any problem.
1.EVM is a piece of code that runs on top of the hardware of each node. It reads and executes the smart contracts.It takes a look into all instructions from the smart contract ,it will tell the CPU how to execute them and it will reach a result.Also EVM is good for Security, it ensures that the S.C. wonât take over the computer making the entire network vulnerable.
2.Byte code.
3.Solidity is a programming language like Java Script.Solidity has a compiler that will take the instructions you have given in the S.C. and compile it down to byte code.The E.V.M. reads the byte code.
4.Because BTC is not a TURING Complete language, meaning it can solve some problems, but the programmability is primitive. Script , the programming language of BTC can create multisig. wallets, still being very limited.
5.It means in theory you can program anything you want because it has loops, that allows the programmer to tell the software to do one thing several times.
[quote=âfilip, post:1, topic:8443, full:trueâ]
Homework on EVM - Questions (Updated on Dec 3 2019)
1. What does the EVM do?
2. What is the format of the instructions that the EVM can read?
3. What is the relationship between the programming language Solidity and Bytecode?
4. Why canât Bitcoin run the same type of complex programs like Ethereum can?
5. What is a Turing Complete programming language?
[/quote]
Homework on EVM - Questions (Updated on Dec 3 2019)
1. What does the EVM do?
It will read the bytecode written in solidity language in the smart contract.
2. What is the format of the instructions that the EVM can read?
Solidity and soon viper.
3. What is the relationship between the programming language Solidity and Bytecode?
Bytecode is the result of what you get after you have written the smart contract
4. Why canât Bitcoin run the same type of complex programs like Ethereum can?
Because the language of bitcoin is not a turing complete language. The developers don´t want to slow down the network also because bitcoin should be used as digital money only.
5. What is a Turing Complete programming language?
It is a complete language. It can solve every problem that will be encountered.
5.What is a Turing Complete programming language?
Turing complete is a term used in computability theory to describe abstract machines, usually called automata. Such an automaton is Turing complete , if it can be used to emulate a Turing machine. Now a programming language is said to be Turing Complete if it can simulate a single taped turing machine. Thus most programming languages are turing complete . C, C++, C#, Java , Lua, Python.
Hope this gives you a clear picture of the subject.
If you have any more questions, please let us know so we can help you!
Carlos Z.
2.What is the format of the instructions that the EVM can read?
Quite close sir, but Solidity is the programming language that you use to create/design smart contracts, after that, it will be compiled into ByteCode, so the format of the instructions that EVM reads is Bytecode.
If you have any more questions, please let us know so we can help you!
Carlos Z.
thank you for your feedback my good sir! What do you mean by compile? I cant find it in translate.
Greets john
1. What does the EVM do?
It translates the code from solicity and communicates with bytecode (the language of the SC)
2. What is the format of the instructions that the EVM can read?
Solidity
3. What is the relationship between the programming language Solidity and Bytecode?
its connected via the EVM (translates)
4. Why canât Bitcoin run the same type of complex programs like Ethereum can?
its written in a non turing complete language, SCRYPT which does not allow complex conditions like Solidity does (only very basic smart contracts) - therefore Vitalik founded Etherium becaus Bitcoin miners wanted to keep the core characteristic (money/value storage) of Bitcoin.
4. What is a Turing Complete programming language?
Solidity
1: The EVM is running on each full node of the Ethereum network and allows for transactions and instructions of a smart contract to be verified and processed securely.
2: The EVM reads instructions in Bytecode format.
3: Solidity is a human programming language used to create the smart contract, that code needs to be compiled into Bytecode format so that the EVM can read and execute the instructions of that code.
4: As bitcoin uses âscriptâ programming language, this restricts itâs programmable features and use cases. Using Solidity allows for many more use cases.
5: A Turing complete programming language is not limited in itâs functions and can essentially solve any problem.
As an example, you can code âloopsâ, which will perform a certain operation many times with variable instructions.
-
What does the EVM do?
It reads the instructions from smart contracts and transfers them
to a nodeâs CPU. Then the CPU executes them. -
What is the format of the instructions that the EVM can read?
Byte code. -
What is the relationship between the programming language Solidity and Bytecode?
The instructions are written in the Solidity programming language.
Then a compiler is used to convert that language into byte code. -
Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin is programmed to only perform transactions. Nothing else. -
What is a Turing Complete programming language?
A language that can perform any computational function.
- EVM runs over all nodes and does execute whole actions on ETH network. Mining, validating, txes, keeps content of network of the system
- Bytecode
- Programing works are done in solidity and need to be compiled to bytecode, to EVM understand it
- Due not Turing complete Scrypt and less space in blocks
- It is language which reaching all possibility and makes them programable an executable
- EVM on every node reads the Smart Contracts to verify the blockchain.
- Bytecode.
- Solidity is the language in which you program a smart contract then compile that code into Bytecode.
- Bitcoin does not have a Turing complete programming language.
- A Turing complete language is able to allow you to program anything you can think of, loops are an integral to this capability.
Homework on Ethereum Virtual Machine - Questions, July 21 2020
- What does the EVM do?
The EVM will read and execute code of a smart contract.
- What is the format of the instruction that the EVM can read?
The EVM reads bytecode.
- What is the relationship between the programming language Solidity and Bytecode?
Solidity code is compiled into Bytecode for the EVM.
- Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin language is Script. Script is not Turing complete, and doesnât allow the execution of additional complex computer code.
- What is a Turing Complete programming language?
Turing complete languages, can execute complex computer codes. Turing complete language doesnât have limitations.
-Hector A. Martinez
What does the EVM do?
Ethereum Virtual Machine reads the smart contract compiled bytecode, and executes the smart contract instruction set on the node CPU. This is good for several reasons including to provide an intermediate layer that prevents smart contract bytecode from executing directly on node hardware.
What is the format of the instructions that the EVM can read?
Compiled bytecode from one of the source code languages supported by Ethereum such as Solidity, Go and others.
What is the relationship between the programming language Solidity and Bytecode?
In this case Solidity is the human readable/human-written (simply speaking) source code, and bytecode is the compiled version of the source code to be consumed by the EVM, then executed as binary code on node CPU.
Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin Core uses a domain-specific version of C++ intended for the goals of the Bitcoin project that largely differ from the goals of Ethereum and doesnât require a language with many unnecessary, complex features (in relation to Bitcoin project) that would go unused anyway. This isnât a bad thing - in fact it is a specific design decision and philosophy.
What is a Turing Complete programming language?
In simple terms it means a programming language consisting of enough design features to allow programs written with it to simulate a computer.
-
What does the EVM do?
The EVM is running of every full node in the network. It reads the compiled bytecode of a smart contract, verifies it and proceed by running the code on the CPU of a node. -
What is the format of the instructions that the EVM can read?
The EVM reads bytecode. -
What is the relationship between the programming language Solidity and Bytecode?
A smart contracts instructions is written in the programming language Solidity. That code is the compiled into bytecode, for the EVM to read. -
Why canât Bitcoin run the same type of complex programs like Ethereum can?
While Bitcoin is programmable in the language Script, itâs not Turing Complete and therefore restricted. Solidity is Turing Complete and that enables Ethereum to run more complex programs than Bitcoin. -
What is a Turing Complete programming language?
In principle a Turing Complete programming language is a language without limitation.
-
What does the EVM do?
The Ethereum Virtual Machine reads smart contracts, and instructs the CPU to process instructions. Containerised for security, to prevent malicious attempts to access CPUâs -
What is the format of the instructions that the EVM can read?
The EVM reads byte code, which is the output from compiled Solidity code -
What is the relationship between the programming language Solidity and Bytecode?
When you compile a Solidity program, it is translated into bytecode which can be undertood and processed by the CPU -
Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin uses SCRIPT language, which is not Turing-Complete, so cannot perform the more complex functions required by Smart Contracts -
What is a Turing Complete programming language?
A language which can perform complex mathematical operations on a piece of code
Thank you Carlos. That explanation really adds to the completeness of my understanding.
Much appreciated,
MegaTron
- Ethereum Virtual Machine uses the cpu in the nodes to execute the criteria in the smart contracts.
- The EVM reads bytecode.
- Solidity is the Ethereum programming language that is compiled, w/ an application, into bytecode.
- Bitcoin canât run the same complex programs because itâs programming language is incomplete.
- A Turing program allows for complex smart contracts.
- The EVM reads and executes Byte code.
- Bytecode
- Solidity is the programming language in which smart contracts are written, Bytecode is the language in which Solidity code is compiled too, so the EVM can read and execute the smart contracts.
- Because the language used on the btc blockchain is not turing complete.
- A language that in theory can do anything, solve any (computational) problem.
-
What does the EVM do?
EVM adds security to the network. It prevents âDenial Of Serviceâ DOS attacks. It computes the coding from the Smart Contract in an isolated manner, ensuring the security of the network. -
What is the format of the instructions that the EVM can read?
ByteCode -
What is the relationship between the programming language Solidity and Bytecode? We program in Solidity with the Compiler. Compiler the communicates with the EVM using ByteCode.
-
Why canât Bitcoin run the same type of complex programs like Ethereum can? Bitcoin blockchain is not Turing Complete. It can only do a small set of easy computations.
-
What is a Turing Complete programming language? Turing Complete language can essentially compute anything given it gas enough GAS for execution of problem.