Homework on EVM

  1. What does the EVM do?
    EVM is a piece of code that is used within the network to interpret commands and support the network. Nodes also have EVM running on their computers as well.

  2. What is the format of the instructions that the EVM can read?
    Solidity and Viper are combined with the bytecode and the EVM can interpret it.

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity and Bytecode together is a list of code or commands that are linked to a complete language. The code will look readable and pretty much anything can be coded and built upon in this format.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin uses script and is not a complete language. Bitcoin is used to protect money and wealth. On the other hand, ETH is used to checks and balances using smart contracts.

  5. What is a Turing Complete programming language?
    Allows for any problem to be computed or solved for.

1 Like
  1. The EVM (Etherium Virtual Machine) is used to breakdown/read smart contracts and broadcast between nodes on different computers. EVM is the intermediary between smart contracts and the CPU. It also serves as a security model to protect the CPU of the computers reading the smart contract.

  2. The EVM read instructions in Bytecodes.

  3. Smart contracts are written in Solidity language. However, for EVM to be able to read the contract, a Solidity compiler has to convert the code to bytecodes for EVM to decode and execute.

  4. Because Bitcoin is run on a Not Turing Complete Programming language (Script) which basically means the language doesn’t have the loop option which renders it limited.

  5. NTCP basically means the language doesn’t have the loop option which renders it limited.

1 Like
  1. EVM reads instructions from the smart contract and converts those instructions to EVM bytecode so that the it could send it out to the CPU where it could execute the result. It also has this security standard that protects the CPU from outside force that could tamper the smart contract.

  2. EVM Bytecode

  3. Solidity is the programming language for producing smart contracts to the blockchain. The bytecode is the formation of the EVM converting the instructions of the smart contract (programmed through the solidity programming language), which then it sent out to the CPU where it could read and execute the result of that.

  4. It script language is not complete and doesn’t run the loop function.

  5. It means that it could solve any programmable execution you could imagine of.

1 Like
  1. EVM is a network of computers the act as a middle man between the compiler and the byte code to protect network from malicious attacks.

  2. Solidity

  3. Solidity is compiled and translated into bytecode for execution.

  4. Because the language bitcoin uses is not Turing complete.

  5. Turing complete programming language allows a language to solve more complex problems.

1 Like
  1. EVM stands for Ethereum Virtual Machine, ‘encapsulated’ at each computer participating in the Ethereum Network making it possible to read and execute Smart Contracts code deloyed on the Ethereum blockchain.
  2. EVM reads bytecode.
  3. Solidity is the programming language used to write Smart Contracts code on Ethereum, and it can be compilled to bytecode so that the instructions be read by the EVM.
  4. Bitcoin is written in script programming language, which is not turing-complete, limiting it’s capabilities in comparison to Ethereum, that can perform complex logics such as loops because it uses Solidity which is turing complete.
  5. Defining a programming language as Turing Complete isn’t quite straight forward taking in account it’s definition and applicability in practice, but what is loosely called as ‘Touring-complete’ is a machine - or a programming language, in this case - that can ran any computation needed to solve from basic to complex ‘‘real-world’’ tasks or logics. A brief and more objective answer could be that Solidity, for ie, can deal with the wide range of operations beyond add, multiply, etc, including conditional and also repeated execution (loops), required to write more complex/wide-use applications.
1 Like
  1. The EVM runs on top of all nodes from the computers in the network. It works as a middle point where Ethereum blockchain retrieves information from the EVM and the EVM then gives that information to the CPU… This to avoid security hazards such as malicious code hacking the users computer if the CPU was directly connected to Ethereum.
  2. Bytecode
  3. A smart contract has instructions that is in byte code. The EVM is only executing smart contracts through bytecode therefore, solidity has a compiler that developers use to compile the code/instructions down to byte code. Then the EVM can read these instructions.
  4. Because it isn’t turing complete. It lacks a complete programming language to run the instructions needed. It lacks loops, so It can do one thing several times. Thereby, the memory needed would be extremely big for small executions.
  5. It is a programming that can execute all the functionality needed i.e. solve every problem that needs to be solved.
1 Like
  1. EVM reads and executes smart contracts.
  2. EVM readsl byte code compiled in solidity code (or viper).
  3. Solidity compiles human readable code into byte code for execution.
  4. Bitcoin is written in Script language which is not Turing complete - so only basic contracts can occur.
  5. A Turing-Complete programming language is able to program anything . This means very complex programs are able to be created (vs bitcoins very basic capabilities)
1 Like
  1. What does the EVM do?

It is an intermediary that runs smart contract code.

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

They can read solidity.

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

Solidity is the smart contract programming language and the bytecode is the representation of the final contract as hexadecimals on solidity.

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

Because the bitcoin developers didn’t want people to spam programs that they all would have to run. They wanted bitcoin to simply be about “digital gold”.

  1. What is a Turing Complete programming language?

A program that can face all the challenges and demands that a smart contracting platform would need.

  1. The EVM utilizes the hardware of the computer. It reads and executes the smart
    contract.
  2. Byte code.
  3. The Solidity language is read by a complier which turns it into byte code.
  4. Bitcoin uses a different programming language which is not Turing complete.
1 Like

The Ethereum Virtual Machine is a piece of software that runs on every node in the Ethereum network. It takes control of the computer’s CPU and uses it to verify the transactions and smart contracts on the network.

It can read many programming languages, but it focuses on Solidity and Viper.

Smart contracts are made in Solidity or Vyper and are then compiled (converted) into bytecoin so the EVM can execute them.

Bitcoin is like this by design. Programmers are afraid of spam efforts, with scripts that execute a lot of times, that clog the blocks. Bitcoin should be digital gold and nothing else, they thought.

A Turing Complete programming language is able to solve problems. It can do loops: doing one thing several times. And can handle variations in parameters.

  1. What does the EVM do?
    A. It runs decentralise ways, how we reach consensus is EVM has 8 secure code in the network in such a way all in consensus about what the result should.
  2. What is the format of the instructions that the EVM can read?
    B. EMV can read bytecode.
  3. What is the relationship between the programming language Solidity and Bytecode?
    A. Progamming language solidity, which support to compile to bytecode that can be run on the EMV.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    A. Bitcoin has programming language called Script ( hand writting character ) it is not turing complete. But ETH has turing complet.
  5. What is a Turing Complete programming language?
    A. Turing complet it means where it can express all possible programme ( repeat this things until some comdition known as loop, run this programme until something happen.
1 Like
  1. What does the EVM do?
  • interprets and executes all compatible smart contracts after they’ve been compiled into bytecode
  1. What is the format of the instructions that the EVM can read?
  • Solidity or Viper which is compiled into bytecode
  1. What is the relationship between the programming language Solidity and Bytecode?
  • the solidity programming instructions are compiled into bytecode which is in turn run on the EVM
  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
  • Bitcoin’s script language isn’t turing complete and doesn’t allow for loops to be performed in order to run complex programs that accommodate contract state change; this was done intentionally so as to prevent spamming and clogging of the network
  1. What is a Turing Complete programming language?
  • a turing complete language can execute any logic problem instructions and allows loops to be performed
1 Like
  1. EVM enables developers to create DApps and deploy smart contracts on the ethereum network.
  2. Byte Code
  3. Bytecode is the information our Solidity code gets translated into
  4. Bitcoin is not meant to run applications on top of it. It is just meant to be virtual gold. If you run smart contracts on top of Bitcoin it could potentially get spammed, slow down the network because of loops.
  5. Turin complete language is solidity. In theory anything you can think of can be done in solidity. This is not always true in the real world.
1 Like
  1. What does the EVM do?
    A// The EVM is th ethereum virtual machine and what it does is makes possible to execute code on the network in such a way that we are all in consensus about what the result would be.

  2. What is the format of the instructions that the EVM can read?
    A//byte code, generated by compilers

  3. What is the relationship between the programming language Solidity and Bytecode?
    A// Solidity ----> Compailers ------->Byte code

the relationship is that solidity is the language use to code ethereum and bytecode is the one that the EVM read to follow orders.

  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    A//Because bitcoin runs a script language that is not touring complete.

  2. What is a Turing Complete programming language?
    A language that solve any kind of problem and tells the software to do something serveral times(loop)

2 Likes
  1. What does the EVM do?
    EVM (Ethereum Virtual Machine) runs the smart contracts on the ethereum blockchain.

  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?
    A smart contract is written in Solidity which is a programming language. It will be compiled into bytecode so the EVM can read it.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoin’s programming language, Script is not Turing complete, which means it’s limited and simple.

  5. What is a Turing Complete programming language?
    Turing Complete language lets you program anything you want, there are no limitations. Allowing to make loops.

2 Likes

1.EVM is program that runs on every node of the network and executes the smart contracts on Ethereum Blockchain.
2. EVN can read and interpret the byte code on the smart contract.
3. Solidity is Ethereum language and compiles the informations in byte code
4. Bitcoin program language Script is not touring complete
5. Turing complete language can execute any logic without limitations with as many repetitions as you want

1 Like
  1. EVM is an application which runs on all nodes. EVM is a form security which executes the code before it is directed to the CPU.
  2. The format of the the instructions which EVM can read is bytecode.
  3. The programming code is written in Solidity, a set of instruction is then sent to a complier which is an app that translates the code into the bytecode format which the EVM can read.
  4. Bitcoin has it own programming language called Script. it is a primitive language which basic smart contracts can be written. Script language is not turing complete
  5. Turing complete language can solve complex problems. Turing complete also features the ability to create loops within the program.
1 Like
  1. What does the EVM do?
    It executes the instructions of a smart contracts byte code and orders the CPU accordingly

  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 the program that writes the smart contract which is converted into byte code which the EVM can read

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because it uses Script which is not turing complete and wont handle the smart contract size

  5. What is a Turing Complete programming language?
    It is a program that allows devs to write whatever programs they want (In theory). It also allows the functionality of loops which can solve complex problems

1 Like

1 EVM reads a smart contracts instructionsand if they are legit it tells the cpu what to do

2 EVM can only read ByteCode instructions

3 Solidity is the language used to write smart contracts on ethereum, when compiled it gives back ByteCode instructions to the EVM

4 Bitcoin uses Script as language and as a non turing complete language it can’t handle complex smart contracts.

5 A turing complete language is a programming language with which you can program whatever you want

1 Like
  1. Evm executes and encapsulate smart contract instructions.
  2. He can read the byte language.
  3. Solidity is the language used to create a smart contract. While Evm reads the bytecode via the compiler so that it can execute the given instructions.
  4. Bitcoin is not turing complete. He has script language which can create only simple and basic smart contracts.
  5. It is a language that can create any smart contract you can think of.
1 Like