Homework on EVM

  1. What does the EVM do? Run smart contracts; it is in every node of the Ethereum blockchain
  2. What is the format of the instructions that the EVM can read? bytecode
  3. What is the relationship between the programming language Solidity and Bytecode? Ethereum is programmed in Solidity; but a compiler is used to “translate” into bytecode so that the EVM can execute the Smart contracts
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can? Because BTC is programmed in Script which is not turing complete
  5. What is a Turing Complete programming language? It’s the way solitity is; and it means it can do anything it’s programmed to do and also has loops which can execute something n times.
1 Like

1- EVM executes the code in each of the node 9computers of the network.
2- EVM doesn’t allow the smart contract to run directly each node
3- Solidity is the proggram that writes in a language called byte code. Solidity produces the byte code.
4- Because the script language of bitcoin is very limited.
5- In theory, developers can make any application they want in a Turing complete programming language.

1 Like
  1. What does the EVM do?
    The Ethereum Virtual Machine is an application running on top of existing nodes in the network. It can use the hardware of the nodes, CPU etc and can also read and execute smart contracts.

  2. What is the format of the instructions that the EVM can read?
    The EVM can read bytecode which has been compiled from solidity.

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity can be compiled into bytecode.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin is not based on a Turing complete language.

  5. What is a Turing Complete programming language?
    A Turing complete language is very flexible and has loops. It allows you to make applications with unlimited possibilities.

1 Like
  1. The EVM runs the bytecode of smart contracts on each ethereum node.

  2. EVM Bytecode.

  3. Solidity is the programming language used to program human readable smart contracts, which is then turned into Bytecode for the EVM to read and execute.

  4. Bitcoin’s programming language, Script, is not turing complete.

  5. A turing complete programming language allows for complex scripts to be written, which can contain loops and conditions to modify loops while it runs. Theoretically anything can be programmed in a turing complete programming language.

1 Like
  1. EVM is a software that all Ethereum nodes are running, which reads and executes deployed smart contracts using the resources of the network.
  2. byte code compiled from Solidity
  3. Solidity is the programming language compiled into byte code that is readable for the EVM
  4. the script language of Bitcoin is non-turing complete
  5. turing complete languages can theoretically be used to build anything, but is limited with programming time and resources
1 Like
  1. EMV stands for Ethereum Virtual Machine. It interprets and runs smart contracts.
  2. EMV reads Bytecode from the Solidity compiler.
  3. Solidity is used to write the smart contracts. The compiler takes the code and compiles the logic into Bytecode. The EMV then reads the Bytecode.
  4. Bitcoin is not Turing compete. It cannot solve all problems due to no loops being integrated out of fear of spamming. Its block size is also limited.
  5. A Turing complete language contains Loops.
1 Like

1: EVM is an application on all nodes that executes the smart contracts on the ethereum blockchain. It instructs the CPU to run the Smart contract application and allows the nodes to come to consensus.
2: EVM reads the smart contracts written in byte code
3: Solidity is the programming language of ethereum that is then translated to Bytecode using a compiler and EVM then read the Smart contracts written in bytecode.
4: Because its programming language, Script, is not turing complete.
5: A turing complete programming language can, in theory, accomplish any task. The main factor presented in this course is the ability to run loops that can adapt to variables that may change from one execution to the next.

1 Like
  1. The EVM or Ethereum Virtual Machine is a program that reads the smart contract commands, complies it, and then translates it into bytecode for CPU compiling and execution.

  2. Solidity will complier commands into bytecode. EVM then reads the bytecodes, compiles it and instructs the CPU to extract smart contract.

  3. Solidity compiles the code for the smart contract into bytecode for the EVM to read.

  4. Bitcoin language’s, Script, does not allow the usage of loops as in Ethereum.

  5. A Turing Complete programming language allows to execute a command multiple times with loops and can adapt due to a variable change.

1 Like
  1. The EVM makes it possible to execute code on the Ethereum Network in such a way that we are all in consensus about what the result should be.
  2. It is written in Solidity and compiled in EVM byte code.
  3. The smartcontract are written in Solidity, then compiled to into byte code.
  4. Because Bitcoin code in not Turing Complete.
  5. In a Turing Complete programming language you can program anything you want.
1 Like
  1. EVM, Virtual machine in Ethereum network which running smart contracts.

  2. Bytecode

  3. Solidity is programming language which is used to write smart contracts, to be read and run on EVM its need to be first compiled to bytecode

  4. Because Script (Bitcoin programing language) is not turing complete (is more primitive or simple than solidity)

  5. Turing complete programming language is complex, comprehensive language which can program more complicated and larger operations

1 Like
  1. EVM interprets the compiled code instructions of the smart contracts.
  2. Instructions written in Solidity
  3. Solidity is the human readable format of the instructions then it will be compiled into Bytecode (machine readable) for EVM to execute
  4. BTC scripting (scripts) is not Turing complete, there is only limited set of instructions
  5. Turing Complete programming language in theory can solve any computational problem.
1 Like
  1. Evm is running on top of every hardware so they will use all the resources like CPU, it can also read and execute smart contracts.
    So the Evm will look at all the instructions from the smart contracts and then do the calculation ect and then give the instructions to the cpu on every node what to do and then it will reach the results . thats how they reach consensus.

  2. Bytecode

  3. After you have programmed the instructions on solidity you compile the codes to bytecode so the EVM can run it.

  4. Bc its not turing complete, its very primitive so there is limits on what you can do on script.

  5. A program that in teori has no limits on what you can do.

1 Like
  1. EVM (Ethereum Virtual Machine) Allows for us to execute code on a global decentralized network to ensure all CPUs running the EVM script (solidity) are in consensus to verify what a result should be. Implementing this Turing complete script allows the CPUs to indirectly execute smart contracts once the EVM executes it directly after compiling the instructions into byte code then processed by the CPUs. The EVM also provides security by not allowing a potential malicious script to take direct control of the network (CPU; hardware) by providing an encapsulated OS environment to run requested smart contracts and transactions. Lastly, due to it’s Turing complete feature, anything becomes programmable, scalability becoming the only potential hurdle.
  2. It reads byte code created by a compiler responsible for reading the code/instructions.
  3. Solidity is the programmable language interpreted into byte code by a compiler that the EVM then reads/executes.
  4. Bitcoin’s Script language is much more simple/not Turing complete.
  5. A Turing complete language allow programmers the flexibility to program whatever they want by allowing the implementation of other programs like the loop feature for redundancies and manipulate them accordingly. It can solve any computational problem.
1 Like
  1. What does the EVM do? | The EVM allows all nodes in the blockchain to come to a consensus on smart contracts in the network.

  2. What is the format of the instructions that the EVM can read? | Bytecode.

  3. What is the relationship between the programming language Solidity and Bytecode? | While smart contracts will most likely by written in solidity, the EVM will compile the Solidity programming and turn it in to Bytecode.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can? | Bitcoin’s programming language, script, is not a turing complete language, as well as the fact that it doesn’t have a system like EVM, meaning it cannot run complex programs.

  5. What is a Turing Complete programming language? | A Turing complete programming language is a programming language that can theoretically solve any problem it needs to.

1 Like
  1. What does the EVM do?
    A. It reads the Byte code and runs the smart contract.

  2. What is the format of the instructions that the EVM can read?
    A. Byte code

  3. What is the relationship between the programming language Solidity and Bytecode?
    A. Solidity is a programming language that reads byte code using a compiler.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    A. Bitcoin does not have a script that is turning complete unlike Ethereum

  5. What is a Turing Complete programming language?
    A. Allows loops to be run

1 Like

EVM is the Ethereum Virtual Machine and runs smart contracts on the nodes in the network. It is unstoppable and transparent, while delivering specific instructions for each transaction.

The EVM reads byte code.

Solidity is compiled into byte code using a compiler, and the byte code then runs (through the EVM) on the CPU of a node, just like every other programming language.

Bitcoin’s network is not turing complete. Ethereum is turing complete.

Turing complete programming language capable of being customized, in order to accomodate smart contract capabilities across transactions.

1 Like
  1. EVM (Etherium Virtual Machine) is another level of the ETH network that makes it possible to run “Smart Contracts” on the ETH Blockchain. EVM runs on all nodes in the Blockchain and acts as an intermediary between the Smart Contracts and the CPU,s on the nodes. The EVM will read all instructions in the smart contract and tell the CPU what to do.

  2. EVM can read Solidity and covert it to Bytecode.

  3. EVM reads the “Solidity” language from a smart contract and converts it to “Bytecode” to be executed by the CPU’s.

  4. Bitcoin cannot run complex programs because its programming script is not Turing complete.

  5. Truing Complete languages can be used to virtually program anything. Most programs these days are Turing complete.

1 Like

1.executes a code on smart contracts
2. smart contract to EVM to CPU. EVM tells CPU what to do and protects the network from CPU
3. Viper - compiler instructions in bytecode
4. Bitcoin have limited/incomplete programmability. It has a limited programmability called Script.
5. Loops

  1. What does the EVM do?
    EVM executes the code from the smart contracts in a virtual machine using the resources of the node (Cpu, gpu etc.) providing security to the blockchain.
  2. What is the format of the instructions that the EVM can read?
    EVM can read Bytecode.
  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the programing language that developers use in order to program on the Ethereum blockchain and by using a compiler it is transformed into Bytecode so it can run on the EVM.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because of the differences in programming languages between Solidity and Script. Script being a non Turing Complete programming language.
  5. What is a Turing Complete programming language?
    A Turing Complete programming language is a programming language that can solve any problems in its code and a key difference from non-turing complete languages are the possibility of using Loops.
1 Like
  1. evm interprets smart contracts, runs on all the nodes to make it possible for consensus.
  2. The evm reads byte code.
  3. solidity is used to write the smart contract which then is compiled into byte code which the evm reads.
  4. bitcoin runs on a script that is not turing complete.
  5. a programming script that is able to be given any command and can run in a loop.
1 Like