Homework on EVM

  1. The EVM runs on every node and helps all nodes reach consensus. It reads smart contracts and makes sure they are valid before it tells the CPU what to do.

  2. Bytecode

  3. Code is written in Solidity and then compiled into Bytecode.

  4. Bitcoin is not Turing Complete, meaning that it cannot solve complex problems. It is only made for finance. Ethereum is Turing complete and has no limits and can also use loops to execute a contract more than once.

  5. See 4

1 Like
  1. What does the EVM do?
    Take information from a program and execute that programs code. once done it pass the information to each individual computer that is in the Ethereum Network and complete the consensus process. Acting as a middleman between network and smart contract
  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?
    programing language provides code compiled by a compiler into bytecode
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin’s code is not “True and complete” bitcoin developers chose to only allow script language limiting its problem solving capability and its exposure to spamming
  5. What is a Turing Complete programming language?
    loops can be programed and pretty much anything else you can think of
1 Like
  1. EVM the smart contract in byte code format and instruct the CPU what to do.

  2. Byte Code format.

  3. Solidity>>>Compiler >>>Byte Code.

  4. Because it uses a simple programming which cannot do complex code and also not Turing Complete.

  5. It means that it has no limitation.

1 Like
  1. What does the EVM do?
    -EVM will process the smart contracts through its channels to every computer on the Eth. network, think of it as a bridge between the two.

  2. What is the format of the instructions that the EVM can read?
    -EVM will work with bytecode.

  3. What is the relationship between the programming language Solidity and Bytecode?
    -The bytecode that the EVM will use comes from Solidity language that was converted to bytecode.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    BTC is not turing complete. Its functions and executions are quite limited.

  5. What is a Turing Complete programming language?
    It makes it possible to implement a very wide variety of executable functions.

1 Like
  1. EVM executes smart contracts on the ethereum network.
  2. bytecode
  3. The smart contract is programmed in solidity, and compiled into bytecode that the EVM will read.
  4. Bitcoin is not written in a turing complete language.
  5. A language that allows looping, so that theoretically anything that you can think of can be be programmed.
1 Like
  1. Ethereum is an appication that operates on top of the existing hardware on the ethereum network and that allows for the execution of smart contracts. It reads the smart contract and tells the cpu what to do so that the conditions of the smat contract can be met. It makes sure that all the EVMs on the network reach a consensus about the smart contract because only then can the contract be executed.

  2. EVM byte code

  3. Solidity is the programming language that is used to get to the bytecode

  4. Because bitcoin has a very simple programming language called script which does not allow for the use and execution of smart contracts

  5. It is a language that makes everything programmable.

1 Like
  1. EVM executes smart contracts.
  2. EVM can read Solidity programming language.
  3. EVM can read Solidity language and translate into Bytecode.
  4. Bitcoin can’t run the same type of complex programs like Etherium because it’s not equipped to read Solidity.
  5. Turing Complete is a very basic programming language.
1 Like
  1. EVM is code that can read/execute smart contracts. It is a layer on top of the CPU. EVM executes first and tells each individual CUP what to do.

  2. It uses Solidity via bytecode to execute.

  3. Bytecode is the code or instructions.

  4. BTC uses Script. It is very primitive code and does not allow for more complicated functions. TCL (Turing Complete Language) Loops allows for more complexity.

  5. Loops tell the software one time to before a function over and over.

1 Like
  1. EVM is the application that should be run on all the nodes in the network and it is executing the smart contracts - then the instructions are passed to CPU.
  2. The format that EVM can read is byte code.
  3. Solidity compiles the Bytecode so that EVM could read the instructions.
  4. Bitcoin cannot run the same type of complex program because the programming language used (script) is not turing complete.
  5. A turing complete programming language can perform any set of given instructions, it does not have limitations.
2 Likes
  1. What does the EVM do?
    Ethereum Virtual Machine runs on top of the existing software it uses CPU and other resources to read and execute smart contracts. It tells the CPU what to do. It also ensures that nothing malicious happens.

  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?
    Bytecode is compiled from Solidity using Compiler.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoin is using Script which is not Turing Complete.

  5. What is a Turing Complete programming language?
    Programming language that can theoretically solve any task possible. TC language also has a feature called Loops which allows you to tell the software to do a certain task x times.

2 Likes
  1. EVM is a piece of code that runs on top of the hardware in each node in the Ethereum network. It reads and execute smart contracts.
  2. Reads byte code.
  3. Solidity is the language in which smart contracts are written in, it is then composed into bytecode.
  4. Because Bitcoin uses “script” language - which is not Turing Complete, meaning it cannot program anything you want.
  5. Turing Complete means you can program anything you want. This also allows loops in smart contracts, without automatic loops you’d have to code each loop manually instruction by instruction.
2 Likes
  1. An EVM is responsible for executing the byte code from a smart contract. This helps achieve consensus on the blockchain, as all nodes must individually validate the smart contract instructions.

  2. Bytecode

  3. Solidity is the programming language used for development, which is converted into byte code through a compiler, allowing the programmed instructions to be executed in the smart contract

  4. Not Turing complete and therefore not easily programmable

  5. Can programme any application

1 Like
  1. What does the EVM do?
    EVM (Ethereum virtual machine) is middle step between smart contract and CPU. It reads smart contract (instructions) and deploy it to CPU to execute it. EVM is application that runs on all nodes on ETH network.
  2. What is the format of the instructions that the EVM can read?
    Byte code
  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is Ethereum smart contract language used for programing. It is easier to for people to understand. It is then converted to Bytecode through compiler so the EVM can read and execute it.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Scrypt (Bitcoin language) It is not turing complete language and therefore you can not program anything.
  5. What is a Turing Complete programming language?
    It is language that can read and execute all codes/applications. You can program anything, also loops…
1 Like

Who in here is checking the messages or going over questions? It feels silly to ask @filip to answer the question because you probably busy enough. However, I am not so sure if I got it correctly.

  1. What does the EVM do?
    It is able to run in all PC of the network and to read EVM byte code
  2. What is the format of the instructions that the EVM can read?
    EVM byte code
  3. What is the relationship between the programming language Solidity and Bytecode?
    EVM byte code is the compiled Smart Contract written in Solidity
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    It cannot because the BTC script is not a Turing Complete language
  5. What is a Turing Complete programming language?
    It is a programming language that allows you to make the machine perform any kind of operations. For example it hass LOOPS function allowing you to make the machine repeating a certain number of time a list of operations.
1 Like
  1. What does the EVM do?

It keeps consensus and strong security among all nodes on the ethereum network by being the middle step between the smart contract and the nodes CPU.

  1. What is the format of the instructions that the EVM can read?

Bytecode

  1. What is the relationship between the programming language Solidity and Bytecode?

Solidity is the programming language that developers use to create smart contracts which is then compiled into Bytecode which the EVMs can read.

  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?

It runs a non turing complete programming language (Script)

  1. What is a Turing Complete programming language?

Means you can essentially (in theory) create any program you like.

1 Like
  1. The EVM reads the program and rewrites it in Bytecode.
  2. The EVM can read the instructions in Solidity format.
  3. The program is written in Solidity. The EVM changes instructions to Bytecode.
  4. Bitcoin can’t run the complex programs because the programming language is not Turing
    Complete.
  5. Turing Complete can solve anything.
1 Like
  1. The EVM reads & executes the smart contract and acts as a security measure for the CPU’s and the network.
  2. the format of the instructions the EVM can read are in bytes.
  3. When writing the instructions in Solidity it’s in language we can read and solidity translates it to bytecode which the EVMs can read.
  4. Bitcoin cannot run the same type of complex programs because it’s language is not Turing Complete.
  5. Solidity is a Turing Complete language.
1 Like
  1. What does the EVM do?
    It reads the smart contract, does the required calculations then instructs the node CPU to execute.

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

  3. What is the relationship between the programming language Solidity and Bytecode?The smart contracts on Etheruem are written in solidity the compiled into Bytecode to be read by the EVM.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because it is not a turing complete language.

  5. What is a Turing Complete programming language?
    A language which can implement any possible algorithm.

1 Like
  1. Reads and executes smart contracts through CPU.

  2. Byte code

  3. EVM will compile Solidity language to byte code.

  4. It is not Turing Complete which means that it can not solve all problems and is very limited.

  5. A virtual language that can implement all the features required to run programs like addition, multiplication, if-else condition, return statements, ways to store/retrieve/erase data, perform “loops” and so on.

1 Like