Homework on EVM

  1. What does the EVM do?

The EVM reads and secure smart contracts.

  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 for smart contracts in the ethereum blockchain. It creates readable bytecode for the EVM

  3. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    BTC is written in Script programming language, it doesn’t have dynamic programming features like Solidity, which can do loops for example. Solidity is a so called Turning complete language whilst Scrips isn’t.

  4. What is a Turing Complete programming language?
    It can solve almost every problem and issues including loops.

1 Like

1.EVM makes it possible to execute code on the network in such a way that all the nodes can reach consensus.
2.The format of the instruction is Bytecode
3.Solidity is the programming language that compiles the given instructions into Bytecode.
4. Bitcoin programming language is Script. Script is not Turing complete and creates only very simple smart contracts, like the ones that require multiple signatures in order to execute a transaction. Thanks to EVM and Solidity, Ethereum can created more complex smart contracts.
5.A Turing complete language has Loops, which means it can execute the same list of instructions several times.

1 Like
  1. The EVM reads smart contracts as the CPU would read a regular program. The EVM is on all nodes and reads smart contracts and then tells the CPU what to do. This gives extra security to the nodes because the smart contracts can’t directly communicate with CPUs.

  2. EVM reads byte code.

  3. Solidity is what people use to program smart contracts. A compiler turns the program into byte code for the EVM to read.

  4. Bitcoin can’t run the same type of complex programs that Ethereum can because it uses Script which is not turing complete. This means the program is limited in its capabilities unlike Solidity on Ethereum.

  5. A Turing Complete programming language is a language that allows for anything to be coded without limitations.

1 Like
  1. The EVM (Ethereum Virtual Machine) is an application on all nodes, executes code that nodes reach in consensus, EVM reads and executes smart contracts then gives instructions to the C.P.U.
    EVM reads in Bytecode Although there are scalability issues, in theory EVM is Turing complete.
  2. EVM reads Bytecode
  3. Solidity compiles data then changes to Bytecode
  4. Bitcoin cannot run said complex programs like Ethereum as Bitcoin programming language is script which is not Turing Complete.
  5. A Turing Complete programming language allows for loops in the programme that could be challenging if they were input manually, Turing Complete means that in theory it can solve any computation problem.
1 Like
  1. EVM is a virtual machine to run smart contracts on the nodes in the network. The EVM ensures that no malicious activity is happening in a smart contract, and is like a security layer for the network.

  2. byte code.

  3. Solidity is compiled into byte code using a compiler.

  4. Because Bitcoin’s programming language, Script, is not turing complete.

  5. A turing complete programming language is a programming language that’s so flexible that you can write whatever program you want on it. A non-turing complete programming language would be a programming language where you could only program applications that generated a website with a variable set colors, while a turing complete programming language would make you able to create the website from scratch yourself.

1 Like
  1. What does the EVM do?
    A: Makes it possible to execute code on the network in such a way that everyone is in consensus.
  2. What is the format of the instructions that the EVM can read?
    A: The EVM will read the bytecode from the smart contract that was compiled from the solidity or viper code.
  3. What is the relationship between the programming language Solidity and Bytecode?
    A: The code is written in solidity and then the compiler application will compile the solidity logic down to bytecode on the smart contract which the EVM can then read.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    A: Because Bitcoin is written in Script which is too primitive to write complex smart contracts.
  5. What is a Turing Complete programming language?
    A: A Turing complete language will have loops which is a feature in a programming language that allows a programmer to tell software to do one thing several times.
    Solidity is Turing complete which means it can be programmed to solve all problems.
1 Like
  1. EVM is the Etherium Virtual machine.It execute machine code,isolates base os, isolate inviduval codes…
    2.It means that smart contracts can’t directly run the codes and they are isolated from the network.

4.Bitcoin can’t run the same time of complex codes because is less smart (more primitive then eth.)

1 Like
  1. The EVM is an environment where nodes can run programs for smart contracts without allowing the smart contracts to take over the resources of the node itself.

  2. The EVM can can read instructions written in bytecode.

  3. The programing language solidity is the more human language for programmers and developers to use that then gets compiled into bytecode so the EVM can execute the code.

  4. Bitcoin cannot run the same type of programs because the Script language bitcoin is built on is not Turing complete and therefore has no loop or iteration functionality.

  5. In a Turing complete programing language you can write instructions in loops so a set of actions can be iterated multiple times with a single piece of code instead of having to write out the entire process by hand.

1 Like
  1. The EVM (ethereum virtual machine) executes code on the network. It tells the CPU what to do based on the instructions of the smart contract
  2. The format of the instructions the EVM can read is solidity
  3. Solidity is the programming language which is then compiled into bytecode for the EVM to read
  4. Bitcoin cannot run the same type of complex programs like Ethereum because it doesn’t have the programming language to run complex programs. It’s not turing complete
  5. Turing complete programming language allows one to run any type of smart contract
1 Like
  1. The Ethereum virtual machine is an application that runs on all nodes of the Ethereum network. Essentially, the EVM makes it possible to execute smart contracts on the network and gives a consensus mechanism for the said smart contracts (ensuring all nodes are in agreement with the result of the contract).

  2. The format of that the EVM can read is bytecode, similar to what a CPU reads when you are executing a program on your personal computer.

  3. One of the programing languages of Ethereum is Solidity. Essentially, this a a language that gives you a certain syntax that will allow you to create a smarte contract. The relationship between Solidity and bytecode is in the compiler. A compiler will take your solidity code and translate it into bytecode that can then be read by the EVM.

  4. Bitcoin can not run the same type of programs as ethereum because the programing language of Bitcoine, Script, is not turning complete meaning that there is a limit to what kind of programs can be execute on the network. More so, the design of Bitcoin was never intended to be a platform for developers but rather a value protocol for the internet.

  5. A turning complete programing language is one where the is theoretically no limit to what you can create using the programing lanague. One important aspect of TC langagues is that they can loop, meaning the CPU will read the line of code (the instruction) and repeat it multiple times.

2 Likes
  1. EVM runs smart contracts that are compiled into Byte code. EVM runs on top of the hardware of the ETH nodes. Also protects the nodes from malicious contracts because they cannot be run directly by the CPU’s of the nodes.

  2. Bytecode

  3. Solidity is a programming language for ETH that allows folks to create smart contracts to run on ETH. Solidity has a compiler that translates the contract into bytecode so the EVM will understand and run it.

  4. Bitcoin has script, but it is not a Turing Complete programming language. It cannot create loops.

  5. A Turing complete programming language can create loops.

1 Like
  1. What does the EVM do?
    EVM read and execute the smart contract on Ethereum blockchain network in a way that all agree. It also work as layer of security on network by protecting the network from malicious code written on smart contract files.

  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 high level programming language that human can understand but machine cannot. A solidity programming file need to be converted into the bytecode format so that machine (EVM) can read it.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    because there is no supportive programming language in bitcoin or nor something like EVM.

  5. What is a Turing Complete programming language?
    Its a programming language that have the capacity to write any kind of code. you can create complex program.

1 Like
  1. EVM stands for Ethereum Virtual Machine. The EVM reads byte code that has been compiled from solidity and executes smart contracts and transaction requests while maintaining an isolated environment from the CPU.
  2. The EVM is a simple stack-based execution machine that runs bytecode instructions. The EVM is also a Turing-complete machine but is limited by the amount of gas that is required to run any instruction. This means that infinite loops that can result in denial-of-service (DoS) attacks are not possible due to gas requirements. Additionally, EVM is an entirely isolated and sandboxed runtime environment - it does not have access to any external resources such as a network or filesystem.
  3. Solidity is a high level language, similar to Javascript. Bytecode is a compiled version of solidity.
  4. Bitcoin uses script, which is not turing complete, and limited to sequential and stack-based operations, which is not suitable for complex operations.
  5. Turing complete languages allows loops, states, conditions and flexibility to program whatever you want on top of it.
1 Like
  1. What does the EVM do?
    EVM = Ethereum Virtual Machine. It is a program on top of the Ethereum node, that executes the Smart contracts written in appropriate programming language (Solidity for example) and send appropriate byte code to CPU, which will do what EVM tells it to do.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the programming language (like english). It is compiled into Bytecode for EVM to process.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoins programming language “script” is primite and it is not Turing complete.

  5. What is a Turing Complete programming language?
    It is the language, that allows loops, states and conditions.

1 Like
  1. What does the EVM do?

The Ethereum Virtual Machine reads and executes smart contracts; it is stored on every computer and leveraging the CPU from every computer on the system

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

Instructions for EVM are in byte code.

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

EVM uses the coding language Solidity. a Compiler takes the solidity code and compiles it down to byte code, then the EVM reads all the instructions

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

Bitcoin has a simple scripting language. It is not turing complete; it cannot program anything/everything needed.

  1. What is a Turing Complete programming language?

A TC programming language is a universal programming language where you can compute anything that any other computational method can compute;

1 Like
  1. Compiles Solidity and Viper smart contracts into byte code that can be executed by a computing unit.
  2. Solidity and Viper
  3. Solidity is high level programming language while byte code is the machine language
  4. The Bitcoin programming language, Script, is not a Turing complete language
  5. It’s a language that is capable of running all possible algorithms

1.reads and executes smart contracts

2.Byte code, which is complied by solidity

3.solidity compiles data into byte code for the the EVM to read

4.BTC runs on script which is limited , not nearly as programmable as ETH/solidity

  1. a language is only turing complete if it has loops

1. What does the EVM do?
Ethereum virtual machine, or EVM for short, is a virtual environment that allows smart contracts to interact with each other. EVM is a blockchain-based software platform that allows developers to create decentralized applications (Dapps) on the blockchain and every node in the Ethereum network runs an EVM instance which allows them to agree on executing the same instructions.

2. What is the format of the instructions that the EVM can read?
The EVM uses a set of instructions that are encoded to bytecode to execute specific tasks

3. What is the relationship between the programming language Solidity and Bytecode?
Solidity is a Turing complete programming language for writing smart contracts. Solidity gets compiled to bytecode which is what the Ethereum virtual machine executes.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin functions with limited Turing completeness and Ethereum is a complete display of the Turing completeness, providing a massive database without interconnecting with financial institutions.

5. What is a Turing Complete programming language?
A programming language is Turing complete if you can implement any possible algorithm with it.

1 Like
  1. EVM - Eth virtual machine makes possible to execute and read smart contracts.
  2. The EVM can read byte-code.
  3. Solidity complies into EVM byte code so the EVM can read the transactions and tell the CPU to execute them.
  4. Because bitcoin’s programming language Script is not a turing programming language.
  5. A turing complete programming language can have loops - you can program a software to do the same thing several times which is not possible on a not turing programming language.
    In theory it is possible to program anything on it.
1 Like
  1. The EVM executes actions through code on the computers in the network(nodes). The codes it acts on are smart contracts.

  2. The EVM instructions are written in a code called Solidity.

  3. Bytecode is a primitive form of programming language in terms of what type of problems it can solve or actions it can take. All inputs have to be manually put into code, whereas solidity is capable of writing loops. Much more can be done through solidity much more quickly.

  4. Bitcoin can’t do complex actions or smart contracts like Ethereum can because the programming language it runs on it not turing complete, and the network is at risk of being spammed. In addition to that this would lead to a much larger blockchain and would slow down the network.

  5. A turing complete language can solve complex problems, and can theoretically solve any problem.

1 Like