Homework on EVM

  • What does the EVM do?
    Solidity will be compiled via a compiler in bytecode. EVM communicates with the CPU in bytecode. Each node in de the ethereum network runs a EVM. EVM is a global singleton machine with a global single ton state. EVM is an isolated environment (encapsulated) for security reasons.
  • What is the format of the instructions that the EVM can read?
    Bytecode
  • What is the relationship between the programming language Solidity and Bytecode?
    Solidity is compiled in bytecode the EVM uses bytecode to communicate with de CPU
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin uses een scripting language which is not turing complete. Solidity is turing complete (with loops) and is the programming language used by Ethereum
  • What is a Turing Complete programming language?
    With loops and you can program everything
1 Like
  1. EVM lets execute smart contracts on Ethereum.

  2. It reads instructions in Bytecode.

  3. Bytecode is written in Solidity.

  4. Bitcoin is written in Sciprt which is not Turing complete language and has limited possibilities.

  5. Language like Solidity ythat can perform loops wchich allow to programm pretty much anything.

1 Like
  1. evm is an application in on top of the cp that read instructions and it will tell to the cpu to execute the instructions .
  2. in byte code.
  3. the solidity is a langue and the logic and instructions that are written in solidity are compiled in byte code for the EVM to reed it, so the EVM reed in byte code, it doesn´t care about the language.
  4. Due to the limitations of its language called script that it is not turin complete.
  5. It is a language that allow you to program anything you want.
1 Like
  1. What does the EVM do?

Isolates or abstracts the execution of code away from the physical machine

  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?

Solidity compiles to Bytecode

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

It is not turing complete

  1. What is a Turing Complete programming language

It allows for all operations to be executed. Example is loops

1 Like
  1. What does the EVM do?
  • The EVM is a component held by every node that acts as the middle man between the byte smart contract code and the cpu. The EVM is what executes the byte code for the smart contracts, this is also for safety to avoid malicious code from executing code directly via the cpu.
  1. What is the format of the instructions that the EVM can read?
  • The EVM reads byte code from top to bottom executing code synchronously.
  1. What is the relationship between the programming language Solidity and Bytecode?
  • The developers write their code in Solidity which then compiles the instructions to Bytecode which is what language that the EVM can interpret the smart contract instructions.
  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
  • Because Bitcoin does not support a Turing Complete language, meaning the Script language it does support cannot perform more complex functions like Loops.
  1. What is a Turing Complete programming language?
  • A Turing Complete language allows for any problem to be computed or solved for.
1 Like
  1. What does the EVM do?

EVM, which stands for Ethereum Virtual Machine, is the virtual program that interprets and executes the smart contracts, and helps run every node. It also allows the information be interpreted from the compiler, which previously was sent from Solidity.

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

  2. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the programming language, and bytecode is the compiler that tranforms the information so that the EVM can read it.

  3. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because it is not Turing complete, like Ethereum.

  4. What is a Turing Complete programming language?
    A programming language that can create any language it wants.

1 Like
  1. What does the EVM do?

A: The EVM is a native application to Ethereum that stands in front of the CPU when processing smart contracts on Ethereum. The EVM reads, calculates and executes Solidity code (or any coding language to be precise) & runs it through a Network of Computers (PoW) consensus model before compiling the instructions into Bytecode for the computers CPU to then read, execute and communicate with the rest of it’s system. This is mainly for security reasons.

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

A: The format of the instructions the EVM can read is generally in Solidity code, but it can read & compile any coding language used.

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

A: The relationship between the languages Solidity & Bytecode is that the instructions within the Solidity code is compiled into Bytecode by the EVM (Ethereum Virtual Machine)

Solidity is similar to Java Script, C++ & Python programming languages.

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

A: Bitcoin cannot run the same type of complex programs like Ethereum can because it’s native coding language ‘Script’ is a non-turing complete programming language. Which means it cannot solve all problems it may be faced with, where Solidity is a Turing Complete programming language which means it can solve and execute anything you can think of.

  1. What is a Turing Complete programming language?

A: A Turing Complete programming language is a language where you are able to program anything you can think of, it can execute any line of code and usually has functions called ‘Loops’ which allow you to tell the software to complete an action multiple times, where with a non-turing complete language you would have to write each instruction separately.

1 Like
  1. reads EVM bytecode and tells the cpu what to do.

  2. the EVM reads in evm bytecode.

  3. solidity is complied into bytecode so the EVM can read it.

  4. because btc uses script as it’s programming language, script is not tuning complete which means it is restricted on what it can do.

  5. it is a language that is able to solve any problem and program anything using it.

1 Like
  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