Homework on EVM

  1. What does the EVM do?
    Evm is executing bytecode of a smartcontract on a virtual environment on each node

  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?
    Solidty is a programatic language used to code smart contract on Ethereum. When it is compile each instruction is represent by bytecode and then interpret by the evm

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because bitcoin don’t have a turing complete interpreter

  5. What is a Turing Complete programming language?
    A turing complete language allow you to modify memory if it has conditional branching an
    imperative language solidity can be consider as turing complete

1 Like
  1. What does the EVM do?

The Ethereum Virtual Machine is an application that runs on the Ethereum network that uses local nodes’ hardware resources to read smart contract instructions in Bytecode format.

  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?

Smart contracts are written in Solidity and converted into Bytecode when compiled.

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

Because “Script”, the programming language of Bitcoin is not capable of doing complex operations.

  1. What is a Turing Complete programming language?

It is a language that is capable of performing complex operations.

2 Likes
  1. What does the EVM do? The EVM reads and executes smart contracts on the Ethereum blockchain. It also serves as a buffer to encapsulate the smart contract from directly accessing the network CPUs. The EVM interacts with the smart contracts and then instructs the CPU for security.
  2. What is the format of the instructions that the EVM can read? The EVM reads instructions in EVM Byte Code.
  3. What is the relationship between the programming language Solidity and Bytecode? Smart contracts are written in Solidity and then compiled to EVM Bytecode to be executed.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can? Bitcoin is unable to run complex programs like Ethereum because its programming language Script is not Turing Complete and cannot execute loops which are essential to complex programs
  5. What is a Turing Complete programming language? Solidity is a Turing Complete programming language.
1 Like
  1. What does the EVM do?
    Executes a smart contract.
  2. What is the format of the instructions that the EVM can read?
    It reads them in byte code.
  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is what is used to write the smart contract then the EVM turns it into bytecode for the nodes to understand.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin is not Turing complete.
  5. What is a Turing Complete programming language?
    One that can program anything imaginable including code using loops that can not be written on bitcoin.
1 Like
  1. What does the EVM do?
    The EVM is executing smart contracts. Each node runs an EVM.
  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?
    Solidity is the language programmers can use to write smart contracts which get compiled into Bytecode and then processed by the EVM.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoin isn’t Turing Complete.
  5. What is a Turing Complete programming language?
    A language that allows complex programming, including loops.
2 Likes

1. What does the EVM do?

Contracts written in a smart contract-specific programming languages are compiled into ‘bytecode’, which a feature called the ‘ethereum virtual machine’ (EVM) can read and execute.

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

The EVM reads a low-level representation of smart contracts called the Ethereum bytecode.

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

Smart contracts are normally inscribed in higher-level languages, like Solidity, then gathered to EVM bytecode.

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

Ethereum uses blockchain technology to provide an open software platform that’s open to anyone to build on. Developers can utilise the technology and programming language, Solidity, to create smart contracts; self-executing agreements that can facilitate the transfer of money, content, property or anything of value, provided a set of parameters have been met.

5. What is a Turing Complete programming language?

A programming language is Turing complete if and only if we can write every computable function in this language.

1 Like
  1. Runs smart contracts in isolated environment so that errors do not affect host machine.
  2. it compiles solidity into EVM byte code and executes that
  3. bytecode is compiled solidity instrictions
  4. because Bitcoin script is not TC
  5. a programming language in which anything can be programmed and has loops
1 Like
  1. EVM is Ethereum Virtual Machine. It adds another level on top of the Ethereum blockchain.
  2. The EVM is running on top of the hardware using the resources that the node has. The EVM can read and execute smart contracts. The CPU does not execute the set of instructions directly, but it is executing the code indirectly because what is executing the code is the EVM. The EVM will tell the CPU of the computer what to do.
  3. It reads the smart contract by reading the Solidity script that has been compiled to the EVM byte code.
  4. BTC using Script and Script is not a Turing Complete language because it cannot perform loops. By adding a Turing Complete language to BTC the block size would have to increase and that would be a problem.
  5. A Turing complete programming language is a complete language that you can do anything with. Solidity is a Turing Complete language and BTC Script is not.
1 Like

Hello,

  1. an EVM (Ethereum virtual machine) is a virtual machine present on the nodes of the Ethereum network. It runs the code, written in solidity, and then transmits it to the cpu in byte code form. The virtual machine acts as a filter between a bad actor and the node’s computer.

  2. The EVM uses a dedicated, potentially Turing complete, programming language called solidity. It has similarities with Javascript.

  3. Ethereum contracts have a dedicated programming language called Solidity. Solidity is later translated into byte code so that it can be read by the EVM.

  4. Bitcoin uses script as a programming language, allowing for simple code to be programmed, for instance a multi sig wallet. It is not Turing complete, so it cannot be used to program the extent of things necessary for blockchain 2.0, for instance because it cannot loop.

  5. A Turing complete language is a programming language that can program a vast array of operations, for instance loops.

1 Like
  1. Ethereum Virtual Machine, is an application that executes the code written in the smart contract.
  2. it reads byte code
  3. Solidity is the language you write the program, solidity uses a compiler to pass the code to byte code.
  4. because it was created not to do so, to protect is from being spammed they did not allow the code to have loops, the point of bitcoin was always to be money or digital gold.
  5. a computer language that allows you to create everything you can think of.
1 Like
  1. The EVM acts as a sandbox for smart contracts and allows smart contracts to interact with a nodes cpu through it generating a consensus for the contract when run.

  2. Bytecode

  3. Solidity compiles to Bytecode.

  4. Bitcoin does not use a turning complete coding language.

  5. A turning complete language is a coding language that can be used to compute anything

2 Likes

1 The EVM read the smart contract in byte code then tell the cpu of each nodes what to do. EVM is also a security that prevent malicious code to harm the ethereum network (such as stoling informations from the computers that are running nodes on the ethereum blockchain).
2 Byte code
3 Solidity is a human readable language similar to javascript that can be compiled into bytecode.
4 Bitcoin is not a turing complete language which means it is very limited to make programation.
5. It means you can program anything you want. There is no limitation.

1 Like
  1. The Ethereum Virtual Machine (EVM) is the software that runs on each Ethereum node and executes the smart contracts. It’s purpose is to separate the running of the smart contract from potential interference from other processes running on the computer.

  2. The EVM reads instructions that are in bytecode.

  3. Solidity is the current Ethereum programming language that is compiled into executable bytecode.

  4. Bitcoin can’t run the same type of complex programs like Ethereum can because it’s Script programming language is not capable of complex functions like looping. Script is not a turning complete programming language. Early Bitcoin developers determined this was the best path forward in order to ensure the Bitcoin network could not be spammed and the blockchain filled up faster with more information.

  5. A Turing Complete programming language is a programming language that can solve any type of problem you can come up.

2 Likes
  1. It reads the smart contracts, follows the instructions and executes it.

  2. Bytecode

  3. Smart contracts are created using a programming language called Solidity. The language is then compiled to create Bytecode which EVM’s then read.

  4. Because the script language that Bitcoin uses is very basic and is not Turning Complete.

  5. A programming language that allows you to program anything you can think of. It will have something called Loops which allows a task to be done over and over.

2 Likes
  1. It reads the smart contract and processes the information, before sending it to the CPU. All nodes and miners in the network need to run EVM in order to have consensus.

  2. Bytecode

  3. The code or instructions are written in Solidity and converted into Bytecode.

  4. Limitations on the network, such as block size.

  5. Means it can in theory be programmed any way you want.

1 Like

The EVM is used to read smart contracts and then tell the CPU what to do. The EVM is allso used for security.
Byte code can only be reached with Solidity and soon Python.
Etherereum is a incomplete language. Bitcoin is not.
A Turing Complete language is a language that can’t solve all problems.

1 Like
  1. EVM is an app at the top of each node of the Ethereum networs that run smarts contracts in an encapsuated enviroment.

  2. Bytecode.

  3. Solidity compiles bytecode, so makes easier to write smart contracts.

  4. Script, Bitcoins programming language, is not turing complete. It don’t have loops.

  5. Turing complete programming languages allows you, in theory, to do everything. There are specific commands that makes a programming language turing complete, such as loops.

1 Like

Runs the code and adds security for the network

Byte code which is compiled by the programming language that is beeing used

The code in solidity gets compiled which is then the Bytecode that EVM can use to work with

Because bitcoin is based on script which is not touring complete.

A turing complete programming language enables user to programm anything they can think of (at least in theory)

1 Like
  1. evm is a place where smart contracts run
  2. byte code
  3. solidity has to be complied into the byte code
  4. because of limited block capacity and fact that bitcoin should be digital gold not money
  5. tc allows to solve every problem you ask it for not only limited number of things
1 Like
  • 1. What does the EVM do?
    • The Ethereum Virtual Machine 1) reads and executes smart contract instructions, 2) acts a watchdog between a smart contract and the CPU, 3) computes results that can be compared to the results computed by other nodes on the network so that consensus is reached.
  • 2. What is the format of the instructions that the EVM can read?
    • EVM’s read script code written in the Solidity language.
  • 3. What is the relationship between the programming language Solidity and Bytecode?
    • The EVM compiles the Solidity script code to create bytecode that is executed on a CPU.
  • 4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    • The Bitcoin language is not Turing complete.
  • 5. What is a Turing Complete programming language?
    • A language that can do anything you can think of!
2 Likes