Homework on EVM

  1. Run smart contract code
  2. Bytecode
  3. Solidity is the programming language Which is converted into bytecode which can be executed in EVM
    4)It cannot run in loops And very primitive language.
    5)loops can be done in Turing language
1 Like

1 Like
  1. The EVM reads the code of the smart contract and gives then instruction to the CPU to execute the transaction.

  2. The EVM reads the Bytecode of a smart contract.

  3. Solidity is a so-called complier which translates a programming language into Bytecode.

  4. Because the programming language of BTC called Script is not Turing complete.

  5. A programming language which it should be possible to code everything.

1 Like
  1. What does the EVM do?
    Its a virtual machine that can read and run smart contracts.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the programming language used to write the smart contract and the code is then converted to Bytecode so the EVM can read it.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because the programming language used for bitcoin is the non-turing complete language Script which is way too limited to do complex contracts.

  5. What is a Turing Complete programming language?
    A Turing Complete language can do complex tasks and loops.

1 Like
  1. What does the EVM do?

The EVM run the smart contact on the nodes in the network and manage the ressources allocation of the CPU.

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

The EVM read bytecode.

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

The Solidity programming language is use to create the business logic and then convert/compiled into Bytecode (instructions readable by EVM) for execution.

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

Turing complete.

  1. What is a Turing Complete programming language?

Program complexe business logic loops.

2 Likes

1- EVM reads instructions in a compiled higher level language byte code that the node cpu is capable of read and execute

2- EVM can read byte code

3- They are related via the compiler

4- Because BTC does not use a Turing complete language

5- It means the language allows the underneat to make decisions based upon conditions

1 Like
  1. ETM makes it possible to execute code on the ethereum-network in such a way that everyone is in consensus about what the result should be. ETM itself is a piece of code running on all the computers in the ETH-network and is running on top of the hardware of each node to read and execute smart-contracts. Thus it’s a vital security measure to stop any malicious programming to directly interact with the CPU.
  2. Byte code.
    3.Solidity is ETHs programming language which is written and then used by a compiler that takes solidity-code and compile the logic and instructions into byte code, which EVM will later read.
  3. BTC is not turing complete and thus it’s programming language don’t contain loops which makes it basically impossible to run the same complex programs.
  4. Programming languages that has loops, which allows the programmer to do one thing several times over. Example: do … 1000x. Example: Solidity.
1 Like
  1. What does the EVM do?
    It reads the smart contract instructions and relays them to the CPU

  2. What is the format of the instructions that the EVM can read?
    The EVM reads the bytes code from the smart contract

  3. What is the relationship between the programming language Solidity and Bytexode?
    Solidity is almost like English and is converted into Byte code to write the smart contract instructions.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin has a primitive programme called script which is not Turing complete, and as a consequence is very limited.

  5. What is a Turing Complete programming language?
    It’s a programming language that can solve all mathematical and functional problems.

1 Like
  1. The EVM is Etheruem Virtual Machine, which is run by the nodes in the network. The EVM can accept and verify the transactions and defends the node from spam attack.
  2. The EVM reads Bytecode and does not care what language the contract was written.
  3. The smart contracts are written in Solidility and EVM reads it and turns it into Bycode.
  4. Bitcoin programming language is not Turing complete.
  5. A Turing complete programming language allows us to program anything that we want.
1 Like
  1. EVM reads the byte code from the smart contract and executes it. It is hosted on every Ethereum node in the network.
  2. It can read byte code that has been compiled by Solidity
  3. Solidity is run through a compiler and generates byte code as a result
  4. Because the Script language used in Bitcoin is not Turing Complete and therefore doesn’t have all the features
  5. A Turing Complete language is when a programme is able to run and calculate all the mathematical problems in it given enough time and memory
1 Like
  1. It reads the instructions of the smart contract, checks it for malicious content, broadcasts and gives instructions to CPU

  2. bytecode

  3. Solidity translates into bytecode

  4. Because it is not programmable to same extent as Eth, Btc is not turing complete as Eth is.

  5. This means you can program it to do whatever you want

1 Like

Glenn_CostaRica

1. What does the EVM do?
The Ethereum Virtual Machine executes the compiled bytecode for any interaction we have with the Ethereum Blockchain, making it unnecessary and impossible to execute code for Ethereum directly on the CPU of a computer. This serves the purpose of security since the EVM intermediates between the input code and the CPU as final computation executor, so that nobody can use Ethereum to distribute malicious code and to take virtual possession of people’s computers which could also be used to take possession of the blockchain.

2. What is the format of the instructions that the EVM can read?
The EVM can read only bytecode. It cannot read the instructions we (programmers) write in languages like Solidity and Vyper, or any other language that could be accepted in the future. Since the EVM can read only bytecode, each language has a compiler that reduces the code that humans write to the bytecode that the EVM can read.

3. What is the relationship between the programming language Solidity and Bytecode?
In Solidity, we write instructions that we, as humans, can understand and manage. With this language, we can build the code in a way that it even looks very similar to a natural language like English or German. After we write the set of instructions for a program in a humanly readable way – in this case with Solidity–, we must take this code and transform it into another format: the format of the bytecode. The bytecode consists of, then, the very same instructions as the instructions we have created in Solidity. But, now these instructions are translated into sets of symbols that the EVM can read – even though, they are usually not humanly readable --.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin lacks the capacity to execute certain kinds of common computational tasks, like Loops, without which it is almost impossible to build regular programs, as Smart Contracts. One can only build programs for very simple tasks. We say that Bitcoin is not a Turing complete system, because it cannot compute any kind of problem (Ethereum, on the other hand, is Turing complete, since on top of it – “virtually” – any sort of problem can be computed). Bitcoin is built like this by design, for security reasons, and to preserve its purity and security through simplicity.

5. What is a Turing Complete programming language?
It’s a language that can compute any kind of problem, or that can solve any kind of computational problem.

2 Likes

5. What is a Turing Complete programming language?

Almost right sir, just to give you a better understanding for the Turing Complete programming language it have the ability to solve any kind of problem and the capacity to use loops., meaning it can solve complex problems/operations.

Keep the good work! Any doubt you may have, we are here to give you a hand! :slight_smile:

Carlos Z.

Hello sir, really great answers! you are really understanding the entire picture, keep it like that! :muscle:

Carlos Z.

1 Like
  1. the EVM stands for Ethereum Virtual Machine and is where the smart contract code is read and executed.

2 & 3) The EVM reads bytecode that has been compiled from the programming language solidity.

  1. Bitcoins cannot runt the same complex applications because of it´s coding language not being turing complete.

  2. A turing complete language is a programming language that is totally flexible, and that can run whatever code, in whatever applications imaginable.

1 Like

@thecil Thank you :pray: :sunflower: You are so kind !! I’m totally in love with the courses and with Ethereum :purple_heart: In the future, besides building smart contracts, I want to write articles on blockchain technologies and let many people know about the amazing stuff one can do with this revolutionary invention!

2 Likes
  1. What does the EVM do?
    Ethereum virtual machine, application, pieces of code that read smart contracts and execute instructions
  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 a programming language with a compiler that turns into bytecode son the smart contract can be written and read by the EVM
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    BTC is run on script which is not a turing complete language which doesnt allow loops.
  5. What is a Turing Complete programming language?
    That it allows loops which means it can read and execute instructions over and over again.
1 Like
  1. The EVM (Etherium virtual machine) in an application running on all NODES and is executing smart contracts and giving instructions.
  2. BYTE CODE.
  3. The instructions in which the programming language Solidity uses to interpret instructions is in BYTE CODE.
  4. Its not turing complete.
  5. A program language that can solve many of the problems associated with complex task instructions like smart contract like Solidity wherein the Script language for BTC cannot.
1 Like
  1. Runs the byte code provided by the smart contract
  2. Byte code
  3. A a compiler compiles Solidity to byte code
  4. It’s not turing complete
  5. One that contains logic which can perform anything
1 Like

1.EVM is an application that lives on each node of the ethereum network which is used to execute smart contract code. Once it reaches consensus with all of the other EVMs on the network it then lets the computer know to carry out the orders.
2. byte code
3. Solidity is the code in the smart contract written by the programmer. Solidity Compiles its code before sending it to the EVM. Once the code is compiled it is turned into Bytecode
4. Because the language “script” is a not turing complete.
5. A Turing complete language can solve problems in all possible scenarios

1 Like