Homework on EVM

Ups just realized typo

4.Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Because Script, Bitcoin‘s programming language is OBV NOT Turing incomplete.

  1. The EVM basically reads and executes smart contracts.
  2. Bytecode
  3. Solidity gets compiled into Bytecode
  4. Because Bitcoin’s Script programming language is not Turing complete.
  5. A Turing complete language the one that can perform any kind of computations.
  1. What does the EVM do?
    The EVM runs on every node and runs and executes contracts.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the language that you write smart contracts in, while bytecode is what it is converted to in order for the EVM to read it.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin uses Script which is a more basic form of logic which is not turing complete. While Solidity is turing complete.

  5. What is a Turing Complete programming language?
    It is a language that can solve all problems in theory.

  1. EVM runs on all nodes and translates the smart contracts to the CPU while protecting the CPU from malicious activity.
  2. EVM reads Bytecode
    3.Solidity is compiled into Bytecode and then read by the EVM
  3. Bitcoin script is very basic. It’s not turing complete.
    5.Solidity on the Ethereum network. Its a programmable dynamic language.

Homework 1/26/21 EVM

  1. What does the EVM do?
    For security purposes, the EVM reads, verifies, executes smart contracts deployed on the ETH chain.
  2. What is the format of the instructions that the EVM can read?
    SC’s are written in ETH native Solidity language, Bytecode instructions allow the EVM to read SC;s instructions
  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the programming language that is used to write smart contracts on ETH chain. The code is then “translated” into Bytecode via a compiler.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoins programming language (SCRIPT) is not able to run complex programs because it is non-turing complete.
  5. What is a Turing Complete programming language?
    Solidity is a turing complete language. You can build all types of apps/DApps with these programming languages, which can also solve complicated computation problems. Essentially you can build/program anything you want.
1 Like

1.- Read the instructions in the smart contrart and excecute them

2.- Byte code

3.- Solidity allows you to program everything and then compile the conde and make it a Byte code in order to the EVM can excecute the instructions in the smart contract.

4.- Because Bitcoin has a no complete touring lengague

5.- Allow you to program anything you want. such like loops

1 Like
  1. EVM is on top of the cpu where it interpret and execute the smart contract.

  2. Bytecode

  3. Solidity is the programming language that is use to write the smart contracts and bytecode translate it to the computer.

  4. Because bitcoin only uses scripts and it can’t run like ethereum because it would make the block size larger and that would make the bitcoin alot slower to make a block.

5 Turing complete is a complete language where you can build anything you can think of.

1 Like
  1. The EVM reads and executes the byte code from the smart contract.
  2. The format is Bytecode.
  3. Solidity compiles the instructions into Bytecode.
  4. Because BTC’s scripting language (script) isn’t turing complete.
  5. A turing complete programming language allows building any type of complex program as it allows for complex smart contracts with numerous directions and loops if programmed to do so.
1 Like

Homework on EVM - Questions (Updated on Dec 3 2019)

  1. What does the EVM do?
    EVM allows you execute code on the network in a way that everyone is in consensus about what the result should be. This because the EVM will first read the instructions, do calculations to verify the contract can be fulfilled, and issue the result. Then all the CPUs in the network will do the same and if they all reach the same result, consensus is achieved and the contract actions will be executed.

  2. What is the format of the instructions that the EVM can read?
    Byte code which is changed by Solidity (or another language) compiler from that language into bytecode.

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity has a compiler which will translate the programming language into Bytecode for the EVM to read.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin isn’t Turing Complete so it doesn’t allow for loops. This greatly reduces the number of things that can be done on the Bitcoin blockchain.

  5. What is a Turing Complete programming language?
    It’s a language which allows for more complex problem solving by allowing for loops. Languages are Turing Complete if they can perform any calculation that any other programmable computer can perform.

1 Like
  1. What does the EVM do?
  • EVM is an app that reads and executes smart contracts, it is at every node using all the hardware it needs , like a middle man between smart contract and CPU- it is used because of security
  1. What is the format of the instructions that the EVM can read?
  • Byte code
  1. What is the relationship between the programming language Solidity and Byte code?
  • Solidity is programming language for ETH, which compiles orders to byte-code so EVM can read them
  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
  • BTC isn’t Turing complete- it doesn’t allow loops ( it is very limited )
  1. What is a Turing Complete programming language?
  • Programming language which can program anything, solve all the problems you want to solve . It allows loops
1 Like
  1. What does the EVM do?
    reads and executes smart contracts

  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?
    Bytecode is compiled from the instructions written in Solidity

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    it does not use a turing complete language

  5. What is a Turing Complete programming language?
    a programming language that enables one to program theoretically anything and allows loops

2 Likes
  1. What does the EVM do?
    Ethereum virtual machine is a application present on each node on the network, which exists of a compiler to translate solidity code to machine (byte)code, it is a extra security layer in means of it determines if a smart contract is executed and prevents smart contracts to bypass the EVM.

  2. What is the format of the instructions that the EVM can read?
    Bytecode (machinecode)

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the human readable/programmable language, that is your input for the compiler, the output of the compiler (EVM), is bytecode aka machinecode that your cpu etc. understand and can execute

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin is not turing complete (only scripts), within Ethereum (turing complete) you can program anything you want, it is possible to perform very complex calculations and statements

  5. What is a Turing Complete programming language?
    it can solve all problems (in theory)

1 Like
  1. What does the EVM do?

Ethereum Virtual Machine is an application which all the nodes run on top of their existing hardware, the EVM uses all resources from the network computer and is able to read smart contracts. The EVM will look at all of the instructions and tell the CPU what to do once it’s read the instructions. Ultimately the EVM machine will help the network computers with Concensus.

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

EVM byte code

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

Solidity will use it’s compiler to compile the logic and the instructions down into byte code and the EVM will read the Byte Code.

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

Bitcoin has a very limited script and is NOT turing complete.

  1. What is a Turing Complete programming language?

ETH uses solidity which is a Turing Complete language which means that whatever you can think of can be programmed.

1 Like

Homework on EVM - Questions (Updated on Dec 3 2019)

  1. What does the EVM do?

EVM is the software used by the ethereun network to be able to create/read/write and broadcast smart contracts.

  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 is the interface a developer uses to write the bytecode into the EVM, that way, the EVM can create the smart contract and broadcast it to the nodes. the EVM does not care which software is used to program, but it must be in bytecode.

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

Bitcoin is not touring complete, it is a very primitive programming feature that does not allow such interactions in the blockchain.

  1. What is a Turing Complete programming language?

A Turing complete programming language is a condition in the programming language that can be able to determine "if’s " then " “go tos” and must be able to have enough memory to go back and forth within the problem that is currently trying to solve. Among these two main principles, it must be a language that should have the capability to at least comply with the two features stated .

2 Likes
  1. It`s ETH virtual machine. It can read small contract and gives instructions to CPV to excute them.
  2. byte code
  3. You have compiler who takes your Solidity code an compiles instructions that you have given in bytecode.
  4. Because Eth has turing complete language (loops) and BTC not.
  5. It means that you can build anything on it, and it has loops that allows you as a programer to give instructions to do somethig several times.
1 Like
  • What does the EVM do?
    The Ethereum Virtual Machine, runs the code on the Ethereum networks node (execute the Smart Contracts
  • What is the format of the instructions that the EVM can read?
    Bytecode
  • What is the relationship between the programming language Solidity and Bytecode?
    The solidity is the program that the developers use to create the smart contracts and Bytecode is what the solidity create after the contract is compiled
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoin uses a scripting system for transactions. Forth-like, Script is simple, stack-based, and processed from left to right. It is purposefully not Turing-complete
  • What is a Turing Complete programming language?
    That this system is able to recognize or decide other data-manipulation rule sets.
1 Like
  1. EVM is the program that reads and executes smart contracts on Ethereum network.
  2. Smart Contracts are written in Bytecode.
  3. Humans use Solidity to write programs that are then compiled to Bytecode so EVM can read them.
  4. Bitcoin uses Script which is not a turing complete language, wheras Solidity is a turing complete language.
  5. A turing complete language is capable of programming anything.
2 Likes
  1. What does the EVM do? The EVM reads the byte code (instructions) and executes its instructions.
  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 programming language that the ethereum network runs on, however, this language goes through a compiler which translates the language into byte code.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can? Because it cannot do looping, meaning that it cannot repeatedly execute the instructions of a program over and over.
  5. What is a Turing Complete programming language? A Turing Complete language in theory can execute any instructions that a programmer/creator can imagine.
1 Like
  1. The EVM (Etherum Virtual Machine) is an application each node is having on the ethereum blockchain. The EVM is mainly there for security reasons. EVM is reading and performing the programmed operations in Smart Contracts.

  2. EVM can read “bytecode”

  3. Ethereum has a programming language called “Solidity”. The relationship between solidity and bytecode is that you program in Solidity and then translate your code to bytecode for execution.

  4. Bitcoin has a programming language called “script”. This is not a turing complete language which indicate that you can only perform very basic programming.

  5. A Turing complete programming language implies that you can program anything you can think of in Theory.

2 Likes
  1. The EVM (Ethereum Virtual Maschine) is an App which runs on the nodes’ hardware. It can read and execute smart contracts.

  2. The EVM reads Bytecode

  3. Solidity is the programming language, its being translated by a complier into Bytecode which can be executed by the EVM

  4. Because Bitcoins programming language “script” is not turing complete.

  5. A turing complete programming language like JS, Solidity, Viper, etc. can be used to solve any Problem, you can program virtually anything with it. It also allows for loops.

1 Like