Homework on EVM

  1. What does the EVM do?
    The EVM is the Ethereum Virtual Machine. It is a global virtual computer that runs within other computers (nodes) and uses their resources house smart contracts. It uses proof of work as its consensus mechanism to processes transactions and to ensure that smart contracts are executed.
  2. What is the format of the instructions that the EVM can read?
    The EVM reads bytecode.
  3. What is the relationship between the programming language Solidity and Bytecode?
    The programming language Solidity is what humans use to write smart contracts. That information is then compiled and transformed into bytecode. Bytecode is the language that the EVM reads and understands.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    The script programming language is limited by the capability of the bitcoin network. It is not Turing complete. Meaning that you are not able to do complex commands.
  5. What is a Turing Complete programming language?
    Solidity is a Turing Complete programming language
  1. What does the EVM do?
    A: A virtual machine that reads and executes smart contracts.
  2. What is the format of the instructions that the EVM can read?
    A: byte code, compiled from Solidity instructions.
  3. What is the relationship between the programming language Solidity and Bytecode?
    A: Solidity is the written language that is converted into bytecode for the EVM to read.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    A: Because Bitcoin is written in script and script is not a Turing complete language.
  5. What is a Turing Complete programming language?
    A: one that allows all mathematical calculations
1 Like

1. What does the EVM do?
EVM is the Etherium Virtual Machine that is a piece of code, runs, and executes smart contracts. Every computer in the network has a version of the application and it runs on top of its hardware.

2. What is the format of the instructions that the EVM can read?
EVM can read instructions written in Solidity/Vyper, translated to Bytecode.

3. What is the relationship between the programming language Solidity and Bytecode?
Solidity is a programming language that looks similar to english. To make it readable for the EVM it has to compiled down to bytecode. EVM does not matter what language the instructions were written in, all that matters it that is translated to Bytecode.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
The scripting language in bitcoin is not Turing complete and can’t execute certain commands.

5. What is a Turing Complete programming language?
Turing language that has a feature called Loop, that would instruct the computer to execute a command multiple times. In Bitcoin it would only do it once. If you want it done more times, you have to write the instructions again and again. That was done intentionally by its creators to prevent spam.

1 Like

1.) What does the EVM do? ethereum virtual machine reads and executes smart contracts on each node.
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? Solidity is complied into bytecode to run on EVM.
4.) Why can’t Bitcoin run the same type of complex programs like Ethereum can? Bitcoin uses script and is not turing complete.
5.) What is a Turing Complete programming language? a flexible programming language that allows for manipulation.

1 Like
  1. The EVM stands for Etherium Virtual Machine and it functions like a separate machine sitting on top of the CPU of each node in the Etherium network.
  2. The EVM reads only bytecode.
  3. The smart contract is usually written in Solidity, which is similar to English, but then an application is used to turn it into bytecode so it can be read by the EVM.
  4. Bitcoin cannot run complex programs because it is not turing complete. Bitcoin can only do a few things (like multi sig tx), but because they were worried about it getting scammed or making blocks too big, the devs kept bitcoin very simple.
  5. A turing complete language is what Etherium has , and lets it create any kind of smart contract you could think of, including using loops.
1 Like

5.What is a Turing Complete programming language?

Quite right sir, but could you please describe it in general terms?

If you have any more questions, please let us know so we can help you! :slight_smile:

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! :slight_smile:

Carlos Z.

1 Like

It is a program with loops.

1 Like
  1. The EVM is a piece of code running on all the machines in the network. The EVM interprets and executes the code of smart contracts.

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

  3. The compiler takes the Solidity language and compiles it into Bytecode, which will be readable for the EVM.

  4. Bitcoin can’t run as complex smart contracts because its programming language, Script, is not Turing complete. Meaning that the functionality of the smart contracts is limited compared to Solidity on Ethereum which is Turing complete.

  5. A Turing complete programming language allows you to write into code any conceivable idea.

1 Like
  1. EVM is an application running on all the nodes in which a list of instructions is executed on the CPU through smart contracts.
  2. Byte code.
  3. Solidity uses a compiler that takes the instructions and compiles it into byte code.
  4. Bitcoin is not turing complete.
  5. A turing complete language can program anything you want.
1 Like
  1. The EVM reads the code on the smart contract and keeps it from being read directly from the CPU for security reasons.

  2. The EVM can read Solidity code.

  3. The EVM compiles the Solidity code into Bytecode which can be read by the CPU.

  4. Bitcoin was designed to only be able to run basic programs so it keeps its name as a form of digital currency only. Ethereum was designed to be more dynamic and have the ability to run more complex programs.

  5. You can write any program you like in a Turing complete language, as it contains loops and is more advanced than something like Script.

  1. An EVM or Ethereum Virtual Machine, reads & executes smart contracts and ensures that smart contracts can’t break into the cpu and take control of it.

  2. The EVM can read byte code, meaning that it can potentially read any other programming language that can be compiled into byte code.

  3. Programmers write instructions in solidity and have it compiled into bytecode so that the EVM can read it.

  4. Bitcoin’s programming language “script” is not turing complete.

  5. A turing complete programming language has loops.

1 Like
  1. What does the EVM do?
    EVM is a powerful, sandboxed virtual stack embedded within each full Ethereum node, responsible for executing contract bytecode.

  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?
    Contracts are typically written in higher-level languages, like Solidity, then compiled to EVM bytecode.

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

  5. What is a Turing Complete programming language?
    A Turing complete language is one that can perform any computation. It can implement all the features required to run programs like addition, multiplication, loops, if-else condition, return statements, ways to store/retrieve/erase data, and so on.

1 Like
  1. The EVM is responsible for reading and executing smart contracts.
  2. Byte Code
    3.Solidity decodes the written code into byte code which is readable by the EVM
  3. Bitcoin is run on an old script that is not turing complete
  4. You can programme almost anything you want on a turing complete language
  1. EVM is a component of the Ethereum construction as it manages the internal state and computation on
    the network and it handles the account information consisting of addresses, balances, current gas
    price and information of Block.
  2. Bytecode
  3. The code for the contracts is written in Solidity which are compiled into EVM bytecode so that EVM
    can understand the written language.
  4. Bitcoin in not a tuning complete program.
  5. A Turing complete machine is mathematically able to solve any problem that you feed to it.
1 Like
  1. the EVM reads the smart contracts through bytecode that is solidity compacted and ads an extra security layer.
  2. Bytecode
  3. Bytecode is used to compact the solidity program on the EMV
  4. Because Bitcoin is like web 1.0 having a script to program and Etheriuem having solidity which is much more complex and turing complete.
  5. Turing complete is a language that allows you to program almost everything you want but it can have a scalability problem and high cost.
1 Like

1.Executes Etherium contracts on the blockchain
2. Bytecode
3. Solidity is the programming language using bytecode
4.Bitcoin’s Script is not turing complete and its not capable of performing loops
5. It is a program that can perform all kinds of calculations

1 Like
  1. The EVM is what runs all the smart contracts for every CPU/node.
  2. Byte Code
  3. Solidity is the programming language for Etheremm which is then complied into byte code so the EVM can read it.
  4. Bitcoin uses Script and that language is non turing complete.
  5. It’s a robust prorgamming language that allows almost any program to be developed.
1 Like

1.- It helps execute Solidity programs but making it so the primary components of a node aren’t involved. It also ensures nothing malicious happens, keeps devices safe from potential attacks.
2.- Bytecode
3.- Solidity is translated to Bytecode so the EVM can read it.
4.- Because its programming language is not Turing complete
5.- It can execute more complex actions such as loops and program smart contracts

1 Like
  1. The EVM reads the Smart Contract and it tells the CPU what to do. It makes sure, that the Smart Contract isn’t malware and that it can’t damage your computer.
  2. Byte code.
  3. Solidity is the programming language that is used to program a Smart Contract. The Solidity code is then compiled into Byte code so that the EVM can read it.
  4. Its programing language Script isn’t Turing Complete.
  5. A programming language that can solve all problems that it might need to solve.