Homework on EVM

  1. An Ethereum Virtual Machine allows developer and programmers to run the code which changes from Solidity to Byte code. The EVM is also able to run the code/ smart contract and to get consensus from the entire network.
  2. The EVM operates in a sandbox environment which means that it runs in an isolated environment which means that it is protected and safe from malicious entities.
  3. Solidity is the initial programming language used on the Ethereum network, but solidity then turns the code into Byte format to be executed by the EVM.
  4. BTC can not run the same type of complex programs like Ethereum because the language of BTC (Script) is not a Turing Complete Language.
  5. A Turing complete programming language is essentially a programming language without limits. A language where by in theory you can programme any conditions that you want.
1 Like
  1. EVM is a script that all computer s in the ethereum network run on top of their CPU. It executes actions that are sent as bytes via the CPU without allowing for other auctions that break away from the bytes intention.
  2. They are Script language that gets compiled into byte code.
  3. Solidity is the programming language that is used to write and develop smart contracts. That script then gets compiled into a byte that the EVM with then read and instruct the CPU specifically what to do based on the actions in the script.
  4. The language that bitcoin uses is not the same as Ethereum, so with that said, its limitations are the types of actions able to be performed from the language itself.
  5. A Turing complete language is a coding language that allows free reign of any actions that could be performed using the code itself.
1 Like

What does the EVM do?
The Ethereum Virtual Machine runs on top of a CPU. It reads and executes 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?
Solidity is a ‘compiler’ to read and write Bytecode.

Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin uses Script as a programming language, which is not a Turing complete code.

What is a Turing Complete programming language?
A language that in theory can program anything you like such as Solidity

1 Like
  1. EVM is the interface manager between the node CPU and the Smart Contract in Ethereum blockchain
  2. Byte code
  3. Solidity is the programming language in the Ethereum network with which you can program Smart Contracts while Bytecode is the format through which the EVM read the smart contract for execution
  4. Bitcoin is written in script language which is not Turing complete
  5. Turing complete programming language is such that you can program any idea or application you can come up with without limitations.
1 Like
  • What does the EVM do?
    -EVM is an application running on all of the nodes and it executing the smart contract and then gives instruction to the CPU .
  • What is the format of the instructions that the EVM can read?
    -EVM reads Byte Code
  • What is the relationship between the programming language Solidity and Bytecode?
    -Solidity is the programming language of smart conctract . EVM decodes solidity instructions to execute them in Bytecode
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    -Because Bitcoin is using the programming language Script , which is non turing language . It means it can not solve all problems that it may need to solve.
  • What is a Turing Complete programming language?
    -A turing complete programming language means that you can in theory programme anything you want. Turing complete also allows you to program loops.
1 Like

The EVM runs the smart contracts for Ethereum. This ensures that all nodes running the contracts get the same results no matter their hardware or software, and that they can validate them in the same conditions. It also prevents malicious contracts from having access to the CPU and the rest of the components of the computer where the EVM is being run.

The EVM reads the instructions in Bytecode, which is a low-level computer language, which is easier to read for machines, but harder to read for humans.

Solidity, on the other hand, is a high-level computer language, which is way easier to handle and understand for humans. This way, users program smart contracts in Solidity, which then gets translated into Bytecode for the EVM to execute.

Bitcoin cannot run the same type of complex programs that Ethereum can, because Script, its language, is not Turing-complete, which means it is more limited in its capabilities. A Turing-complete language is a language which can simulate the traits of another general-purpose full-fledged computer language.

1 Like

Answers to “EVM” Questions:

  1. EVM will run the smart contract code, and checks for malicious code.
  2. EVM Reads the byte code.
  3. With Solidity you can write the smart contract in this specific language. This will then be compiled into bytecode which can be used by the EVM.
  4. Bitcoin is limited to Script - which is not turing complete.
  5. Soldity
1 Like
  1. The EVM executes Samrt Contracts
  2. EVM reads compiled byte code
  3. Bytecode is the compiled executable, from the Solidity source code
  4. Bitcoin can’t run the same type of complex programs like Ethereum can because it’s not Turin complete
  5. A Turing Complete programming language supports loops and the mandatory Sequence (Do next), Iteration (Repeat until) and Case (if, then else) of a full programming language
1 Like

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

  1. What does the EVM do?

The EVM runs the smart contracts and checks for malicious code

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

The EVM reads the instructions in Bytecode

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

Smart contracts written in solidity are compiled into Bytecode for the EVM to read and execute

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

Bitcoin is limited to Script which is not a Turing Complete language
5. What is a Turing Complete programming language?

A Turing Complete language allows the developer to program anything they want in theory.

1 Like
  1. The EVM is a virtual machine running the smart contracts on the network.

  2. The format of the EVM is Bytecode

  3. Solidity is the language to program in and is compiled as bytecode to run on the EVM.

  4. Because it is not TC and by that cannot run loops.

  5. A TC language is a language that, in theory, can run anything, also loops.

1 Like
  1. is an application running on all the nodes

  2. Byte Code

  3. Solidity is the language that developers use, which then gets transformed into Byte Code by a compiler

  4. Bitcoin is not Turing Complete

  5. It means that in theory you can program anything that you want.

1 Like
  1. An EVM is the space in which the ethereum smart contracts works
  2. this means its isolated from the computer that is mining meaning it canot interact with the EVM
  3. solidity is the programing language and bytecode is the computer program language
  4. this as BTC is not turing complete and ETH is turing complete
  5. turing complete means you can do anything with the programming language
1 Like
  1. Ethereum Virtual Machine reads the smart contracts and it passes the instruction to the CPU which executes them. EVM also prevent the network from malicious codes or contracts.

2.Bytecode.

3.The smart contracts are written on Solidity then compiled to Bytecode so the EVM can read them.

4.For security reasons, the BTC’s developers don’t want to allow spam to the network and also the BTC’s programming language is not turing complete

  1. A Turing Complete programming language is a language which can program and execute any kind of computable functions. What is also important is that it can loop instructions.
1 Like

1, It allows any code to be executed in a trusless ecosystem.
2. Byte code.
3. Solidaity is the programming language for the EVM byte code - write and transcribe.
4.becuase it is not Turing complete.
5. TC is code that allows any problem to be solved with input and output. These can also be looped.

1 Like

1. What does the EVM do?
A developer write a smart contract in solidity language.
The compiler will translate it in ByteCode.
Ethereum Virtual Machine executes the ByteCode on the ethereum blockchain.
It tells the CPU of the machine what to do.

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 the programmer language.
Bytecode is the EVM language.
Solidity code is translated into Bytecode for the EVM to execute it.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin is using “Script” language.
Script language is not turing complete.
It means it cannot run complex programs like the “loop function”.

5. What is a Turing Complete programming language?
It is a programming language that can solve all type of problems
Ex: C++, Python

1 Like

Homework on EVM

  1. The EVM interpret all the smart contract codes, and execute in all the nodes in order to compare and grant consensus.
  2. Byte code.
  3. Solidity compile to byte code.
  4. Because script it’s not touring complete. In order to maintain bitcoin only as a digital gold.
  5. A language that can solve all the mathematical problems, for example using loops.
1 Like
  1. EVM is reading and executing the smart contract. EVM is a “middle man” between the smart contract and the CPU.
  2. Written in bytecode.
  3. Solidity can be easily and translated to Bytecode by special compeller.
  4. Bitcoin language doesn’t have the TC. Therefore script language can be used only for very easy contracts.
  5. It means that the language can stimulate any Turing Machine. Simply saying it is a language for programming of any difficulty.
1 Like
  1. It executes smart contracts via consensus
  2. Solidity
  3. EVM takes solidity and compiles it down to byte code.
  4. Ethereum is tiring complete and btc is not.
  5. Turing complete language can theoretically solve any programming problem.
1 Like

What does the EVM do? The EVM provides a layer of abstraction (kind of like a middle man) between the executing code and the executing machine. The EVM provides security from Denial Of Service attacks and provides execution of untrusted code. It is a runtime or sandboxed environment.

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

What is the relationship between the programming language Solidity and Bytecode?
Smart contracts are written in Solidity and are then compiled into Bytecode witch the EVM reads.

Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Unlike Ethereum, Bitcoin can not run the same complex programs because it is not a Turing complete language.

Turing Completeness refers to the a programming language that can be used to simulate any Turing machine. This basically means that it is capable of performing complex operations.

1 Like
  1. EVM runs the smart contract codes.
  2. EVM Bytecodes: A low-level programming language.
  3. Solidity is a High-level programming language that is complied into Bytecode, which is a low-level programming language. This enables EVM to run it.
  4. The usage of Bitcoin is limited. It’s programming language are not turing complete.
  5. Turing Complete languages are multi-functional programming language that are usually not limited in usage. They are dynamic and can perform multiple functions via the use of loops.
1 Like