Homework on EVM

EVM Homework

1-The EVM reads the intructions of a Smart Contract and talks to the node´s CPU to execute them.
2- Bytecode prevously compiled from SOlidity language
3- The smart contract is programmed in Solidity, then a compiler transforms the instructions into bytecode so that it can be read by the EVM
4 - The BTC network was not meant to be a Turing complete programming network to run complex intructions and apps, only to be a cryptocurrency and transactions ledger so creators prevented loops from being used and without that feature programming language is not Turing complete and is very limited.
5- A TC programming language is a language able to handle and execute complex tasks including loops for large iterations.

1 Like
  1. A software that executes commands using a CPU on the network.

  2. Bytecode derived from Solidity/Viper

  3. Solidity is a Turing Complete Language while Bytecode is Not Turing Complete Language.

  4. Since Bytecode is unable to execute loops, especially when there are changing variables to the loop commands.

  5. Able to execute any command that someone can think of.

1 Like
  1. EMV reads smarts contracts instructions and tells the cpu what to do.
  2. Bytecode
  3. Solidity compiles Bytecode by tur ING the script into bytes the EVM can read en execute it.
  4. Because the programmers didn’t want to add this second layer and overcharge the blockchain.
  5. A programming language that can have loops.
1 Like
  1. What does the EVM do?
    The EVMs of each network node interact with and read the smart contracts on the Ethereum blockchain and relay the instructions to the nodes’ CPUs.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    The instructions for the smart contracts are originally created using Solidity and then an application compiles and condenses them down into Bytecode so that the EVM can read them.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoin uses a different programming language than Ethereum does, called Script, and it is not Turning Complete.

  5. What is a Turing Complete programming language?
    A Turing Complete programming language is a language in which you can write and create anything. No problem is, in theory, unsolvable.

1 Like
  1. The EVM is the part of Ethereum that handles Smart contracts deployment and execution. At the top level the EVM running on the Ethereum blockchain can be viewed as a global decentralised computer executing with it’s own code with it’s own permanent data store.

  2. The EVM executes instructions in the form of byte code, with a relatively basic set of instructions. This in similar to the assembler code used in micro processors as a comparison.

  3. Solidity is a high level programming language, similar to JavaScript, that you write the smart contact in and is in readable text format. Solidity is then compiled to produce the native byte code to run on the EVM.

  4. Bitcoin does not have a EVM to run programs like smart contacts and is basically non-programmeable. It was primarily designed to manage money transactions between two parties (buyer/seller).

  5. A programming language is Turin Complete if you can implement any possible algorithm on it. The ability to perform loops, recursion and change system state(s) are typical of Turin completeness. Typical most modern languages are Turin Complete including Solidity, Python, JavaScript and Go.

1 Like

1 EVM create an environment to run smart contract.
2 This reduces the likelihood of malicious code built within a smart contract affecting the computer running the EVM.

1 Like
  • What does the EVM do?
    It can read smart contracts written on solidity or viper and execute them
  • What is the format of the instructions that the EVM can read?
    Solidity and viper code
  • What is the relationship between the programming language Solidity and Bytecode?
    Bytecode is Solidity language compiled.
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    because script (its programming language) is not turing complete.
  • What is a Turing Complete programming language?
    that its a complete programming language that can be used to solve any computation problem
1 Like

What does the EVM do?
The EVM runs on top of the CPU, similar to an OS, and enables to read and execute code on the network, in this case Smart Contracts. It also increases the security across the network to make sure the CPU doesn’t make wrong calculations on the code, or that any Rogue Smart Contract makes changes in the computations of the CPU.

What is the format of the instructions that the EVM can read?
EVM can read Bytecode, either compiled by SOLIDIY, VIPER, or any other language in where we can program for the EVM environment.

What is the relationship between the programming language Solidity and Bytecode?
Solidity is where we can write our smart contracts, like any programming language it has it syntax (but for this case it doesn’t matter). But when we are exporting (aka compiling) it will write all command in Bytecode, so the EVM can read, interpret and execute the Smart Contracts.

Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Just because when Bitcoin was developed it was only designed to have simple code, to act just as currency (it is called a NOT Touring Complete language). It can run small programs, called scripts, but it has limitations. P.e. it can read multiple signatures and then approve a transaction.

What is a Turing Complete programming language?
A Touring Complete programming language is a language, that in theory will allow us to do any computational calculations. One main characteristic is that we can include loops, and loops can be programmed with several inputs and outputs, according to the instructions inside a loop.

1 Like

1.) EVM is an application program that reads instructions in a smart contract. This eliminates the CPU’s reading instruction thus increasing security on the Blockchain.
2.) Script
3.) Solidity is written byte code.
4.) Btc is only able to read simple script and can not preform complex functions because of this. Btc is also not scalable.
5.) A script language that can contain loop, is programmable, and is scalable.

  1. What does the EVM do?
    An EVM is an Ethereum Virtual Machine which can read and execute smart contracts developed on the Solidity or Viper programming code.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the programing language used to code on the Ethereum network. This is then complied to Bytecode so the EMV can read and execute the smart contract.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    It is runs on the script programming language so it has limited capabilities and is not Turning complete.

  5. What is a Turing Complete programming language?
    A dynamic programming language which can solve any problem without limitations.

1 Like
  1. The Ethereum Virtual Machine (EVM)
    makes it possible to execute code on the
    ethereum network in such a way that all
    nodes are in consensus as to what the
    results should be. It acts as a translator
    between the propagated smart contract
    and the CPUs of the network. In addition,
    it acts as a security guard by
    encapsulating each smart contract so that
    it does not take over the network.
  2. The EVM reads a programming language
    called Bytecode.
  3. EVM Bytecode is a low-level programming
    language that is compiled from the high-
    level programming language Solidity.
  4. The Bitcoin blockchain programming
    language, Script, is only capable of
    running primitive applications because it is
    not a Turing-Complete language.
  5. A Turing-Complete programming language
    means that everything that needs to be
    computed can be computed using it.
1 Like
  1. EVM is a virtual machine that nodes are running to encapsulate smart contract and execute them.

  2. Smart contract made and compiled by solidity.

  3. Solidity turns smartcontract into Bytecode.

4.It has some programmability like multisig wallets through Script, but it’s not turing complete.

  1. A program language that can program anything.
  1. EVM = Ethereum Virtual Machine. It is basically an app, a piece of code that runs on all the nodes in ETH network. It runs in front/in top of a node’s CPU. It can read and execute smart contracts and then tells the CPU what to do. It also prevents that a smart contract doesn’t do anything malicious.

  2. EVM reads byte code. A piece of code written in solidity goes through a compiler that compiles it down to bytecode. The programming language doesn’t necessarily need to be solidity.

  3. Solidity is compiled down to Bytecode

  4. Bitcoin’s programming language Script is not Turing Complete. Ethereum’s Solidity is Turing complete. This means that Solidity has various things like loops and Script doesn’t

  5. A programming language that can solve any mathematical problem

1 Like
  1. the EVM reads the byte code compiled from a smart contract. It runs and executes the program in the smart contract.

  2. Bytecode

3.Solidity is the source code the program is created in. Bytecode is the format it compiles to.

4.Bitcoin uses Script coding language. This is not a Turing Complete language.

5.A Turing complete language is a dynamic programing language that can create loops. To repeat a command as many times as instructed, without having program every command. Without increasing the size of the smart contract.

1 Like

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

Quite close sir(s), but the format of the instructions that EVM read is ByteCode.

Carlos Z

1 Like
  1. What does the EVM do?
    Eth Virtual Machine executes smart contracts and provides security to the nodes
  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?
    Byte code is 1and 0 and solidity is a programming language mad for devs (like javascript)
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Btc has a programming language named Script which is not Turing complete so can do only rudimental things, also the btc blocks would be too big
  5. What is a Turing Complete programming language?
    Turing Complete language is a advanced programing language that among other things has loops.
1 Like
  1. The EVM runs on the eth nodes and executes the smart contracts

  2. EVM can read bytecode instructions

  3. Solidity is used to write the code that can then be compiled so the EVM can read it as Bytecode

  4. Bitcoin was not designed to run complex programs: this could cause security issues as well as overload the network

  5. A programming language that has no limitations on what can be programmed on it

1 Like
  1. The EVM (Ethereum Virtual Machine) runs on top of the CPU of each node within the Ethereum network in order to read and execute compiled smart contracts. It is the middleman between smart contracts and the CPU of each node.

  2. EVM Bytecode.

  3. Solidity is the main language in which smart contracts are programmed. The Solidity compiler converts these instructions to Bytecode so that the EVM can read them.

  4. Because Bitcoin was programmed only to be digital money and nothing else.

  5. A programming language that, in simple terms, can solve any possible computational problem.

1 Like
  1. The EVM is a piece of code where smart contracts are read and executed. It stands as a layer of protection between the smart contract and the cpu so that there aren’t malicious smart contracts that can eventually take over the network. The evm also compiles the code which is usually read in solidity, into byte code which can then be interpreted by the cpu.
  2. EVM can only read EVM byte code.
  3. Solidity is the language that smart contracts are written in for ethereum. Then the code is compiled into byte code so that the EVM can read and execute the contract.
  4. BTC can’t run these same types of smart contracts because the BTC programming language script is not turing complete. Not being turing complete only allows for very primitive functions in a smart contract like multi sig wallets.
  5. A turing complete programming language allows for one to program a smart contract to do completely as you desire. A technical aspect which stands out is that you can program loops in smart contracts.
1 Like

1-EVM reads the instructions in the bitcode for the smart contract on each cpu, to reach concensus
2-bitcode
3- solidity is the language which compiles the instructions to bitcode
4-It is not turing complete
5- it is a language capable of performing any possible calculation and computer program

1 Like