Homework on EVM

5.What is a Turing Complete programming language?

Quite right sir, but, could you please describe it in general terms?

If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.

Sorry sir, but I do not speak dutch, If you want me to review your homework, might suggest to post them on english?

If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.

  1. Ethereum Virtual Machine is like a security. It secures transactions in a node to keep it from being spammed or hacked. It runs Solidity and Byte codes into the node and spread out through the network.

  2. Byte Code

  3. Once a Solidity code is compiled, it will be translated to Bytecode which only EVM can understand.

  4. Because the programming language Bitcoin uses is not turing complete. It cannot do loops.

  5. Everything that is needed to be computed can be computed by using it.

1 Like

Touring complete you can program what ever you can think of, Touring incomplete is limited

1 Like

Sorry :blush:

  1. What does the EVM do?
    It reads the bytecode and tells the CPU to execute the terms of smart contracts
  2. What is the format of the instructions that the EVM can read?
    EVM reads Solidaty programlanguage converted bytecode via the Solidity compiler
  3. What is the relationship between the programming language Solidity and Bytecode?
    The smart contracts are written in Solidity. The Solidity compiler takes code and compiles
    logic and instructions in Bytecode, then the EVM reads the Bytecode.
  4. Why can’t Bitcoin run the same type of complex programs as Ethereum?
    Bitcoin has script-like multi-sig contracts. Scripts are not complete. It cannot solve all problems. It’s limited. Bitcoin is not implemented due to spam loops and block size limitation.
  5. What is a Turing Complete programming language?
    The full language of Turing includes Loops that tell the program to execute a set of functions once and then go back to run it again.
1 Like
  1. What does the EVM do?
    It reads the bytecode and tells the CPU to execute the terms of smart contracts
  2. What is the format of the instructions that the EVM can read?
    EVM reads Solidaty programlanguage converted bytecode via the Solidity compiler
  3. What is the relationship between the programming language Solidity and Bytecode?
    The smart contracts are written in Solidity. The Solidity compiler takes code and compiles
    logic and instructions in Bytecode, then the EVM reads the Bytecode.
  4. Why can’t Bitcoin run the same type of complex programs as Ethereum?
    Bitcoin has script-like multi-sig contracts. Scripts are not complete. It cannot solve all problems. It’s limited. Bitcoin is not implemented due to spam loops and block size limitation.
  5. What is a Turing Complete programming language?
    The full language of Turing includes Loops that tell the program to execute a set of functions once and then go back to run it again.
1 Like
  1. What does the EVM do?
    The evm is a virtual instance of the ethereum code that safeguards the server from potential attacks from code written on the blockchain
  2. What is the format of the instructions that the EVM can read?
    The EVM uses bytecode for it’s operation
  3. What is the relationship between the programming language Solidity and Bytecode?
    After writing code in Solidarity the complier program converts it to bytecode for the evm
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Although bitcoin is programable it can only run basic scripts.
  5. What is a Turing Complete programming language?
    Turing Complete means the it is possible for the machine to run a full virtual version of a Turing Computer
1 Like
  1. What does the EVM do?
    EVM reads and executes the smart contracts.
  2. What is the format of the instructions that the EVM can read?
    EVM reads byte code
  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity code is translated into Byte code by the EVM and sent to the nodes via the CPU, the nodes then carry out the instructions in byte code.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Its language is not turing complete.
  5. What is a Turing Complete programming language?
    It means that I can program anything I want.
1 Like
  1. What does the EVM do?
    The Ethereum Virtual Machine is an ā€œapplicationā€ that sits on every Ethereum node, in order to compile the smart contracts and sends byte level instructions to the CPU, in order to execute them.

2.What is the format of the instructions that the EVM can read?
EVM can read code written in Solidity (or Viper)

  1. What is the relationship between the programming language Solidity and Bytecode?
    Solidity code gets compiled by the EVM into bytecode, so that it can be executed by the CPU (which accepts bytecode instructions)

  2. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin has it’s own language called ā€œScriptā€ which is not Turing complete and cannot run loops, that’s why it’s impractical for a lot of use cases.

  3. What is a Turing Complete programming language?
    A Turing Complete language must support (besides basic logical and mathematical operations) loops. Examples of such loops are: ā€œDo Whileā€, ā€œForā€, ā€œWhileā€

1 Like
  1. evm checks the binary code and tels the CPU what to do.
  2. bytecode.
  3. Solidity translates readable code to bytecode form.
  4. Bitcoin is not turing complete.
  5. Turing complete is a programming language that can do complex mathematical calculations.
1 Like

Smart contracts are executed to the CPU & the network with Ethereum Virtual Machine. (EVM) Is ingrained on each node in the Ethereum network. A smart contract is executed on Ethereum, the EVM reads the code within the smart contract, checks that everything within the smart contract is valid & translates the Solidity code to byte code for the CPU’s to process. Shares it to the network of nodes and once they all have the same result they broadcast & execute it & the smart contract follows its instructions.

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

Byte Code , the solidity code is translated to byte code via a compiler application into byte code for EVM to read.

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

Smart contracts are written in Solidity , this is then translated by a compiler application into byte code so the EVM can look over the contract using math & logic to ascertain the validity of the contract & keep it secure by checking for malicious code etc before executing.

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

Bitcoin can’t run a Turing complete program because it includes loops which could cause issues with block size, possibly cause hash rate issues , Tx speeds & in turn have a roll on effect causing higher transaction fees. Security could also be compromised.

  1. What is a Turing Complete programming language?

It is a language that can take any program and run it .Considered Turing complete if it is able to recognise or decide other data manipulation rule sets.

2 Likes

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

  1. What does the EVM do? EVM is a layer that converts the Solidity bytecode for CPU/GPU generate actions
  2. What is the format of the instructions that the EVM can read? a kind of bytecode
  3. What is the relationship between the programming language Solidity and Bytecode? a compiler translate solidity code in lower level and backward
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can? The Turing Complete lets make more complex tasks.
  5. What is a Turing Complete programming language? TC is more open to problem solving. I understand TC like something to communicate in any topic. It is not constrain to only finance. A smart contract is a good example.
1 Like

#1.- EVM or Ethereum Vitual Machine is used for designing
Smart Contracts.
#2.- EVM uses solidity and small pieces of code
#3.- Solidity is the programmable software which are translated into
bytecodes that is run by EVM.
#4.- Bitcoin uses script for transactions, not turing complete
#5.- turing complete language uses loops which makes it more
programmable.

1 Like

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

Quite close sir, but Solidity is the programming language that you use to create/design smart contracts, after that, it will be compiled into ByteCode, so the format of the instructions that EVM reads is Bytecode

If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.

Excellent answers, It’s easy to understand. Please keep them like that :muscle:

Carlos Z.

1 Like

Thank you it helps knowing I’m on the right track :grin:

  1. EVM runs on all nodes and executes smart contracts
  2. Solidity is compiled to byte-code to be executed on evm
  3. Solidity is programming language that needs to be compiled to evm-executable-code
  4. Bitcoin with its Script language is very limited in terms of programming
  5. Turing complete language can manipulate data in various ways
1 Like
  1. An application that runs on every node in the network, in which it reads and executes the smart contract.
  2. EVM reads Bytecode.
  3. Bytecode compiles the language from solidity and creates its own language from it.
  4. Bitcoin is not turing complete.
  5. A programming language that allows you to create anything with code.
1 Like
  1. EVM runs on top of all nodes in ethereum network. Can read and execute smart contracts.
  2. EVM can read instructions in Bytecode format.
  3. There is no relation between Solidity and Bytecode.
    Program written in Solidity must be compiled (translated ) to Bytecode.
  4. Bitcoin use very limited and Turing not complete programing language called Script. As well Bitcoin developers don`t want to Bitcoin network to be spammed by smart contracts, as well size of BTC blockchain would be rapidly grow by storing all smart contracts.
  5. In Turing complete language is possible to program absolutely everything.
1 Like
  1. EVM makes it possible to execute codes in the network
  2. Bytecode
  3. Solidity is the programming language that gets complied into bytecode.that only EVM understands.
  4. The cripting language in bitcoin is not turing complete. It is limited and primitive.
  5. A programming language that allows you to program anything and contain loops.
1 Like