1 - the EVM is an interface used by ethereum miners to read smart contract code
2 - EVMs can only read solidity or viper language
3 - Solidity turns smart contracts into instructions that are readable by a CPU
4 - Because Script, the bitcoin language, cannot process actions that are complicated enough
5 - A turing complete programming language allows to process complex instructions
What does the EVM do?
An EVM is an isolated piece of software running on all E nodes. It reads a smart contract in Bytecode and tells the CPU to execute the terms of smart contract. Validation is achieved by comparing the results of the code in each EVM
What is the format of the instructions that the EVM can read?
EVM reads the Bytecode from the Solidity compiler
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 into Bytecode then the EVM reads the Bytecode.
Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin has SCRIPT. SCRIPT is not Turing complete, it is limited to sequential and stack-based operations, which is not suitable for complex operations. Bitcoin did not implement due to spamming loops and block size limitation.
What is a Turing Complete programming language?
Turing complete language contains loops which tell the program perform a set of functions once, then loop back to perform again.
- The EVM executes the smartr contracts.
- Solidity or another programming language?
- Programming language is Solidity. Its written in Solidity.The smart contract transforms it into Bytecode automatically.
- Because Bitcoin isn´t a Turing complete language.
- A language where you can execute complex programms and dApps and which contains Loops. A programm can executed many, many times (Loops)
-
The EVM executes Ethereum smart contracts on nodes by passing instructions to the nodes CPU.
-
EVM reads EVM bytecode.
-
Solidity can be compiled to EVM bytecode.
-
Bitcoin does not have a Turing-complete scripting language.
-
A Turing-complete language is a programming language that can solve all the problems any other programming language can solve. They are generally characterized by having looping program execution.
- EVM is a virtual machine running on top of the nodes of Eth network. It enables the use of smart contracts
- Insturctions are read in bytecode
- Solidity is the javascript of smart contracts, it gets compiled to bytecode and then executed by EVM
- Bitcoins language script is not turing complete and therefore cannot be used for smart contracts.
- if the programming language is Turing complete it can handle complex tasks and therefore its possible to program anything complex, like loops
1.The EVM is a virtual machine that functions as a decentralized network which allows anyone to execute code in a trustless system.
2. Bytecode
3. Solidity is a high-level programming language which is compiled into Bytecode.
4. Bitcoin is intentionally Turing Incomplete to prevent loops and increased block size.
5. In theory, there are no limitations to what computations can be done within the program.
[quote=âhoolie, post:772, topic:8443â]
-
What does the EVM do?
Ethereum virtual machine is a powerful, sandboxed virtual stack embedded within each full Ethereum node, responsible for executing contract bytecode. -
What is the format of the instructions that the EVM can read?
Bytecode -
What is the relationship between the programming language Solidity and Bytecode?
Contracts are typically written in higher level languages, like Solidity, then compiled to EVM bytecode. -
Why canât Bitcoin run the same type of complex programs like Ethereum can?
The EVM is Turing complete, which refers to a system capable of performing any logical step of a computational function and Bitcoin uses script language which is not Turing complete. -
What is a Turing Complete programming language?
[/quote]Refers to a system capable of performing any logical step of a computational function
1. What does the EVM do?
EVM is a decentralized computer that has the ability to run smart contracts on the Ethereum network.
2. What is the format of the instructions that the EVM can read?
EVM can read bytecode.
3. What is the relationship between the programming language Solidity and Bytecode?
Bytecode is compiled from Solidity using Compiler.
4. Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin cannot run the same type of complex programs like Ethereum can, because Bitcoin Script is not Turing Complete.
5. What is a Turing Complete programming language?
A Turing Complete programming language is a language that is able to create any kind of program in order to perform any task.
1. What does the EVM do?
Acts as a security layer in-between the CPU and smart contracts so that the smart contract doesnât have direct access to the CPU. The EVM also executes smart contracts.
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?
Humans write programs/smart contracts in solidity and then it is complied into byte code.
4. Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin isnât Turing Complete
4. What is a Turing Complete programming language?
Programmers can create any type of program with a Turing Complete language
- Encapsulates smart contracts to maintain security.
- Byte code.
- Solidity programing language is more like a translator between machines and humans. We write our code in a programing language like solidity and it compiles the(Translates it) to a machine code.
4.Bitcoin is meant to be digital gold, so the developers donât want it to be fully functional programable blockchain tech. They have a basic, not Turing complete programming language called script. - You can program anything with Turing Complete programming languages.
- EVM runs the code of an smart contract written in solid.
- EVM byte code
- Solidity is complied to Bytecode
- Bitcoin isnât powered with a Turing complete language
- A Turing Complete language means a language in which a program can be written that will find an answer.
-
Is a virtual machine that executes smart contracts using the cpu.
-
Byte code.
-
Solidity is compiled into byte code.
-
Bitcoin runs on script, which is a simple programming code compared to Solidity on Ethereum.
-
The ability to code for any type of problem and program it.
- EVM is a virtual machine that sits on top of a cpu. It sends bytecode from smart contracts to the cpu for execution.
- The EVM only reads bytecode, any programming language like solidity needs its instructions to go through a compiler to turn the language into bytecode.
- A developer programs smart contracts in a language like solidity, this needs to be turned into bytecode by a compiler for the EVM to read.
- Bitcoin uses a language called scripts and this is not turing complete language, so it is limited to the number of problems and instructions it can execute.
- A Turing complete language is a language that can theoretically solve any problem given time, this requires the ability to perform loops until a certain state or condition is reached.
- The EVM is Ethereumâs virtual machine, which executes the code of all smart contracts on the blockchain.
- A sandbox environment is a virtual machine that executes code via a program that communicates with the nodeâs CPU, rather than the code interacting directly with the CPU which might pose security risks.
-
EVM acts as a buffer between the smart contract and CPU of each node to add security to the network.
-
Bytecode
-
Code is written in Solidity and then it gets compiled into Bytecode for the EVM.
-
Bitcoin runs on Script which is not Turing Complete.
-
A language that can solve any problem and be programmable for any application.
What does the EVM do?
EVM or ethereum virtual machine.It is an application running on all nodes and itâs read and execute code on ethereum network using smart contract and then give instruction to CPU.So, CPU doesnât directly execute smart contract.EVM will use CPU and other resources that nodes have.The EVM running on top of hardware each node in network.
The reason why EVM need to be the middle and CPU canât directly execute code because of security.
Because basically, I can deploy anything I want to the network.For example: read your hard drive
Turn on your camera and sent information all everything camera capture to me and read your keyboard.All of this might be dangerous if CPU execute code directly.So, we want to encapsulate this in the EVM.So, the EVM will ensure nothing malicious happened.This EVM will ensure that this smart contract cannot take over your computer.
What is the format of the instructions that the EVM can read?
Bytecode.
What is the relationship between the programming language Solidity and Bytecode?
We use complier in solidity compile all logics and instuction into bytecode and then EVM will read all instructions (bytecode) from smart contract.
PS. EVM doesnât care what programming language you use.It only care bytecode that they recieve and execute by instruction.You can also use Viper complie code instead of Solidity.
Why canât Bitcoin run the same type of complex programs like Ethereum can?
Script in Bitcoin programming is not Turing complete.It cannot solve all problems that it might need to solve while solidity that write on ethereum is Turing complete.
What is a Turing Complete programming language?
Turing complete programming language will have loop function that allow you as programmer to tell software to do one thing several times.
1- It runs on the top of the node. It runs the smart contract instructions passing the code from the smart contract to the cpu
2- Bytecode
3- The code is done in solidity and the compiled to bytecode for the evm
4- Because script is not turing complete
5- Itâs a language that can do and program any thing you can imagine, it only needs time
-
Ethereum Virtual Machine is the program that allows a computer to be a node on the Ethereum network. It can perform / run smart contracts on the network.
-
EVM reads Bytecode.
-
Smart contracts are coded in the Solidity language and then a compiler translates it into Bytecode.
-
Bitcoin is programmed in script and that language is limited in programming power and ability to execute more complex coding.
-
A Turing Complete programming language is highly programmable and can theoretically solve any problem given enough time and resources. A Turing language is capable of performing loops of programming until a certain state or condition is achieved.
- What does the EVM do?
- EVM is bridging the CPU to the smart contracts. It ensures that there are no malicious smart contract running, and then instruct CPU to do as per the smart contract.
- What is the format of the instructions that the EVM can read?
- byte code
- What is the relationship between the programming language Solidity and Bytecode?
- programmers write smart contract in Solidity, then a compiler will âtranslateâ this into Bytecode which can be understood by EVM
- Why canât Bitcoin run the same type of complex programs like Ethereum can?
- because it uses Script, which is a âprimitiveâ programming language and limited in its capacity to execute instruction.
- What is a Turing Complete programming language?
- a programming language that can theoretically solve almost any problem.
- Read byte of smart contract and send it to CPU.
- Bytecode.
- Solidity is the language,once compile it becomes a bytecode which EVM read.
- Not turing complete, limited only
- You can do whatever you want.
I will rewatch the videos again, i have a short term memory, hehe.