Homework on EVM

  1. What does the EVM do? - Executes codes in the network with consensus results.

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

  3. What is the relationship between the programming language Solidity and Bytecode?- Solidity is a programing language that compiles the instructions into the bite codes. The EVM will read all the instructions.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can? - Bitcoin is very limited on its programming. It has a not Turing Complete programming language which can’t solve all problems that needs to be solved.

  5. What is a Turing Complete programming language? - Has loops that tells software to do things several times.

2 Likes
  • What does the EVM do?
    • Ethereum Virtual Machine (EVM) is a powerful sandbox embedded with each full Ethereum node on every node in a network and is responsible for executing contract bytecode.
  • What is the format of the instructions that the EVM can read?
    • EVM reads bytecode
  • What is the relationship between the programming language Solidity and Bytecode?
    • Solidity, a programming language similar to JavaScript, writes the code, which in turn uses a complier to convert it to bytecode, which is then read on each EVM
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    • Although Bitcoin can create simple programs by using script, it cannot create complex smart contracts as do the Ethereum blockchain
  • What is a Turing Complete programming language?
    • A programming language that loops to run programs and solve complex questions
2 Likes
  1. Executes code to all CPUs and runs SCs.
  2. Bytecode
  3. Solidity is the programming language that translates to Bytecode for EVM to read.
  4. Bitcoin used script-not TC. Ethereum uses solidity-IS TC.
  5. TC enables multiple loops and enables you to program anything in theory.
1 Like
  1. What does the EVM do?
    The EVM makes it possible to code on ethereum network. It reads and executes byte code in smart contracts.
  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?
    A compiler takes Solidity code and compiles it down to byte code for EVM to read.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin uses Script which is not turing complete so it is limited when programming applications.
  5. What is a Turing Complete programming language?
    A Turing complete programming language can have loops and is able to program anything.
1 Like
  1. The EVM reads the smart contract and tells the CPU what to do.
  2. The EVM reads bytecode
  3. Solidity is the programming language used to write the bytecode
  4. Bitcoin is not Turing complete
  5. A Turing complete language is one that is theoretically limitless in what can be programmed
1 Like
  1. EVM is the Etherum virtual machine. this executes smart conrts into byte code which then will be run as a readble code on the cpu. It gets the consensous on the entire network.

2 EPV reads byte code

3.Solidity is the programming language that takes instructions and compiles it into bytecode so that the EVM can read it.

4 Bitcoin’s programming language Script is not Turing complete, and can only perform basic programs eg. multisig

5A turing complete language implies that the programming language is fully functional and can solve any problem it may come across. It has features like loops for example where Script does not.

1 Like

The EVM (Ethereum Virtual Machine) is an application running on the Ethereum Network that acts as an intermediary between the ethereum blockchain/smart contracts and the node operators cpu’s.

The EVM reads BYTECODE.

Bytecode is the format that the EVM reads. Bytecode is complied from the ethereum programming language Solidity.

Bitcoin can’t run the same type of complex programs that Ethereum can because it isn’t Turing Complete.

A touring complete language is highly programmable. Basically in theory you can program anything you can think of.

1 Like
  1. What does the EVM do?
    Ethereum Virtual Machine is essential to executing smart contracts in the blockchain.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    Smart contracts are coded in Solidity which is then compiled in Bytecode to be executed by the EVM.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin is a Non-Turing Complete language, whereas Ethereum is Turing Complete.

  5. What is a Turing Complete programming language?
    Turing complete allows loops, complex operations, and basically coding overall. Solidity is a programming language that Ethereum uses that is Turing Complete.

1 Like
  1. What does the EVM do?
    EVM will read the smart contracts to provide instructions for the CPU to execute so the network can reach a consensus for all 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?
    Solidly is the programming language is written in byte code inside the smart contract.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoin’s code is not turing complete, where Etheruem’s solidity language is turing complete.

  5. What is a Turing Complete programming language?
    Turing complete programming language has the ability to create loops and solve complex mathematical problems. It means you can program anything you want without limitations.

1 Like
  1. It runs on all network nodes, reads smart contracts from Solidity and tell the CPU to execute.

  2. Byte code.

  3. Solidity has a special app (compiler) which compiles logic & instructions down into byte code, for the EVM to read it.

  4. Because Bitcoin can only read Script programming language.

  5. It’s a programming language which allows to code anything we want (in the theory).

1 Like
  1. EVM allows us to execute code on the network in such a way that we are all in consensus about what the results should be.

  2. EVM is only interested in reading the byte code or smart contract.

  3. Solidity is compiled into byte code using a compiler, and the byte code then runs on the CPU.

  4. Because it using a language, Script, that is not Turing Complete.

  5. A Turing Complete Language allows for Loops to occur.

1 Like
  1. EVM is able to read smart contracts and will have the cpu execute them.
    2 EVM can read byte code on the smart contracts.
    3 Solidity is a programming language that compiles byte code.
  2. Bitcoin uses script witch is limited and cannot solve all problems and its not a complete language.
    5 A Turing Complete programming language is a programmable language like Solidity that has loops and is able to be programmed to do same multiple functions repeatedly and program anything you want.
1 Like
  1. What does the EVM do?
    EVM is a piece of code that all computers are running that can read smart contracts and give those instructions to your CPU to execute. Its main purpose is security because if these smart contracts were to speak directly with your CPU it could potentially take control of your CPU and compromise the entire network.
  2. What is the format of the instructions that the EVM can read?
    The format of instructions that the EVM can read is called byte code that is written with a programming language called solidity. Ethereum is also working on a new programming language called Viper. A special application called a compiler will then take the solidity code and compile the logic and instructions to create a byte code which the EVM will read and send to the CPU to execute.
  3. What is the relationship between the programming language Solidity and Bytecode?
    The relationship between the programming language Solidity and Bytecode is that it smart contracts are written in solidity and then ran through a compiler in order to spit out a Bytecode which can be sent to the CPU to execute
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin can not run the same type of complex programs like Ethereum because it does not use the same programming language. Instead it uses a much more simpler programming language called script that is not turing complete. Meaning it can not solve the most complex problems and can only solve more basic problems. It also does not have the capability of running loops because of its simplicity. However because of its simplicity it will have much higher scalability and smaller block sizes so that it can do its purpose of being gold in the form of crypto and nothing else.
  5. What is a Turing Complete programming language?
    A turing complete programming language is a language that can solve any complex solution you can think of. Meaning you can program a turing complete language theoretically to do literally anything that you want it to do. It can also execute loops which non turing complete languages cannot do due to changing variables in the loop that need to be adapted after each loop.
1 Like
  1. Evm containes The instructions on a program. It also executes The instructions in all nodes in The blockchain by telling The cpu go execute

  2. Evm can read bite code, IF it is programmet in solidity.

  3. you program in solidity the its compailed into bite cod.

  4. Because its not turing complete.

  5. Its a programminglanguage that in theory makes it possible to program anything, in reality this isn’t always true because of scalabilty , cost , etc.

1 Like

1. What does the EVM do?
EVMs read the info from the smart contracts, control the CPU and make nodes network reach consensus.

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 code is compiled down in bytecode to make it readable for the EVM.

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

5. What is a Turing Complete programming language?
The language which has loops and no limitations to the code size.

1 Like

1. What does the EVM do?
1.A. The Ethereum Virtual Machine (EVM) runs the instructions from the code that has been programmed on the Ethereum smart contract and is able to compute and runs tasks much like a computer.

2. What is the format of the instructions that the EVM can read?
2.A. The EVM runs the Byte Code compiled from the Solidity language.

3. What is the relationship between the programming language Solidity and Bytecode?
3.A. The Bytecode is derived from solidity language and is used natively to compute in the EVM environment by the network nodes.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
4.A. Bitcoin by design does not allow complex code to be conducted using the script language and is not a Turing complete language. It limits its functions to optimise basic tasks and reduce security issues.

5. What is a Turing Complete programming language?
5.A. A Turing Complete programming language is able to perform most of the functions on a computer such as read memory, process cpu instructions, read, write store data.

1 Like
  1. What does the EVM do?

It send all the instruction of a smrt contract on the ETH Network via the Byte Code to the cpu of the machine the EVM runs on. In general it acts as a virtual machine that can execute programs

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

a smart contract in Byte code

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

Solidity is the programming language that your program your instructions in. Bytecode is what is sent to the EVM after the program has been compiled.

  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    it is not Turing complete and can only rund simple scripts. It lacks the ability to run loops.

  2. What is a Turing Complete programming language?

It a language in which you can program anything you can think of.

2 Likes
  1. What does the EVM do?
    It reads and execute smart contracts

  2. What is the format of the instructions that the EVM can read?
    It reads byte code.

  3. What is the relationship between the programming language Solidity and Bytecode?
    In Solidity we write instructions for smart contract and than it is converted into Bytecode in order that EVM can read it.

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

Because scripting language language of Bitcoin blockchain is not Turing-complete.

  1. What is a Turing Complete programming language?
    You can theoretically program everything - using Loops, codes with condition ‘if’, ‘goto’…
2 Likes
  1. What does the EVM do?

EVM allows code to be executed across the Eth network in such a way that all the nodes are in consensus (agreement) about what the result should be.

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

The instructions within a smart contract that the EVM can read are formatted in Bytecode.

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

Solidity is the, or a native programming language for Ethereum smart contracts. Once the code is written in Solidity, it is run through a compiler and output as Bytecode. So I guess, Bytecode is a sort of child to the parent Solidity.

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

It’s not Turing complete, by design.

  1. What is a Turing Complete programming language?

It’s a language that, in theory is as vast as the imagination, in its breadth and scope. It’s meant to be able to solve any and all issues that may arise from its use. In practice however, it’s still limited by usability, time and money… and Eth’s scalability issues.

2 Likes
  1. The ethereum virtual machine is run on all the nodes and reads and executes smart contracts.
  2. Bytecode
  3. You write the code in solidity and then it is compiled into bytecode which can be read by the EVM.
  4. Bitcoin is not Turing complete and is written in script as it was intended to be digital gold only.
  5. It can theoretically program anything such as loops.
1 Like