-
The EVM creates a layer of abstraction between the executing code and the executing machine.
-
The EVM can read bytecode.
-
Solidity is compiled into bytecode .
-
As script is not turing complete.
-
A turning complete language can perform any computation.
Homework - EVM - Ethereum Introduction
- What does the EVM do?
A. EVM - Ethereum Virtual Machine - that consists of a piece of code on all network computer nodes, reads smart contract byte code, and executes it to Ethereum network of computers to get consensus, and block appended.
EVM also encapsulates the smart contract making sure the byte code is safe and good code.
- What is the format of the instructions that the EVM can read?
A. Byte Code.
- What is the relationship between the programming language Solidity and Byte code?
A. Byte Code is initially generated from smart contract instructions that are in byte code. Solidity (program language) sends its logic and instructions through its compiler to the smart contractâs byte code instructions.
The combination of smart contracts byte code with Solidity - compiler is then read by the EVM.
- Why canât Bitcoin run the same type of complex programs like Ethereum can?
A. Because it runs on a different program language called âScriptâ and unlike the âSolidityâ language Ethereum uses, Script has very limited programming ability and limited features such as âNoâ loop function - as Ethereum has unlimited programming, and more features like âLoopsâ function.
Bitcoin just wants to be aâŚDigital Gold, and not a Dapp Builder like Ethereum. Simple works best for Bitcoin, more features like âLoopsâ would not be good for Bitcoin network security and processing time.
- What is a Turing Complete programming language?
A. Means you can program in anything.
-
In short, the EVM essentially reads and executes programmed smart contracts within the Ethereum network.
-
Programmed instructions are compiled by Solidity in the form of âBytecodeâ
-
The relationship between Solidity and Bytecode is that Solidity will compile programmed instructions and convert it into Bytecode.
-
Bitcoinâs programmable language is NOT Turing Complete.
-
In simple terms, a Turing Complete programming language is a language set to be able to solve any mathematical or algorithmic problem.
Feedback is appreciated
-
EVM is the Ethereum Virtual Machine, a piece of code which all nodes in the network are running. It helps to validate the smart contracts by having all nodes reaching a consensus when validating.
-
EVM only reads the byte code.
-
Solidity and Bytecode are essentially the same, just that programmers code in Solidity, which is then converted by the EVM into Bytecode.
-
Bitcoinâs programming language is not Turing Complete.
-
A Turing Complete programming language means that anything can be programmed.
The EVM allows for the execution of smart contracts on the blockchain. It is also responsible for defining the rules for computing new blocks on the network.
The EVM reads instructions formatted in Bytecode.
Solidity is the language programmers use to create smart contracts on the Ethereum network. The code is automatically compiled into Bytecode to be read by the EVM.
Bitcoinâs native language is Script and, unlike Ethereumâs Solidity, Script in not Turing Complete and is therefore much more limited in its applications.
Turing Complete languages are capable of performing complex calculations and take their name from the Universal Turing Machine created by Alan Turing.
- By running smart contract code on all of the nodes it ensures the code is doing the same thing.
- It encapsulates smart contract code from the CPU in a sandbox for security reasons.
- It works on top of the blockchain on top of Tx level.
- It can read EVM bitecode.
- Solidity allows high level abstraction for people to write smart contracts and then it is compiled to the EVM bitecode machine can understand.
- Because Bitcoin team is not interested in developing complex application on their blockchain and is using language called Script which is not turing complete.
- Is a language that can simulate any algorithm if sufficient time is given.
- What does the EVM do?
EVM is the Ethereum Virtual Machine. EVM runs the code of the smart contract and gives it to the CPU of the node to execute. - What is the format of the instructions that the EVM can read?
EVM will read the instructions in bytecode - What is the relationship between the programming language Solidity and Bytecode?
Solidity will convert the programming instruction into Bytecode so that EVM can read it and give the instructions to the cpu of the node. - Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin nascent language is script and is not turing complete so complex programming cannot be done on the bitcoin network nodes. - What is a Turing Complete programming language?
Turing Complete programming language can handle all programming tasks and has loops.
- EVM is reading the instructions from smart contracts, insuring that is not dangerous for the network, and tells to CPU what to do followith them.
- Instructions can be written in Solidity or Viper language and then compiled to Bytecode, which EVM understands
- Instructions are writing on Solidity and compiled to Bytecode
- bitcoinâs programming language is not turing complete
- The one that, in theory, can solve any problem you want him to solve.
- Etherium Virtual Machine
- EVM can read byte codes which are compiled from solidity. It can support all byte codes which are compiled to EVM standard.
- Programming language solidity is a high level language which is compiled to form byte code which can be run on EVMs.
- The programming language of Bitcoin is script which is not a turing complete language. It doesnât have complex features like loops, etc.
- Turing complete programming languages are langages which can be used to solve all the problems.
-
The EVM (or Ethereum Virtual Machine) executes code from smart contracts.
-
The format of the instructions that the EVM can read is byte code.
-
The relationship between the programming language Solidity and Bytecode is that Solidity code gets run through an application called a compiler that generates Bytecode that can be executed by the EVM.
-
Bitcoin canât run the same type of complex programs that Ethereum can because its programming language isnât as robust, since it doesnât allow for things like loops.
-
A Turing Complete programming language is one that can solve complex problems and write complex programs.
- EVM does the following: executes contracts in each node; achieves consensus in all the nodes; ensures security through transparency.
- EVM reads instructions in Solidity.
- EVM is written in Solidity. This is translated to Bytecode for CPU execution.
- Bitcoin does not have a programming language to make it dynamic.
- A programming language is said to be Turing complete when it can execute any algorithm.
- Them EVM is a program that can read and execute smart contracts. It is a program that enables sc to be deployed on the blockchain. It is also a consensus program for all the nodes. EVM is a security layer for the cpu and can detect malicious instructions.
- Smart contracts written in bytecode.
- Solidity is the programming language and interface for the deceloper. Solidity compiles the sc instructions to Bytecode, which is the language the EVM can read. Other programming language may be developed on top of the Bytecode.
- BTC has a more narrow usecase within the limitations of the language Script. Script do not allow for Turing Complete sc because of the block size constraints and scalability issues.
- A TC complete language enables you to program anything (in theory) and deploy it to the blockchain.
The questions
- What does the EVM do?
- What is the format of the instructions that the EVM can read?
- What is the relationship between the programming language Solidity and Bytecode?
- Why canât Bitcoin run the same type of complex programs like Ethereum can?
- What is a Turing Complete programming language?
1 It isolates, reads & carries out instructs from smart contracts on the eth BC
2 Byte code
3 Programmers are using Solidity to write instructs on the ETH BC, EVM reads byte codes, therefore a complier is used to compile programming language, Solidity into bye code.
4 Programmers on the BTC BC use Script as a programming language. Script is very primitive & is limited in problem solving, hence not TC
5 Programmers can program whatever instruct they want, TC can solve any mathematical problem (in theory)
Runs the ETH protocol on every node of the ETH network
EVM bytecode
Solidity code is human-readable but is compiled into bytecode for execution by the EVM
BTC protocol scripting language is not Turing complete
TC language will have all the programming logic features and components to allow any definable set of commands or tasks to be written and executed
-
EVM makes it possible to execute code on the Ethereum network in way where it is in concensus.
-
Bytecode
-
Solidity uses a script and a compiler to implement them into bytecode which the EVM can read and execute smart contracts
-
The scriptive language in bitcoin is not TurningComplete which cannot solve all problems the Ethereum can do. Solodity is TurningComplete which means you can program anything you want.
-
A TuringComplete Language can run âloopsâ which are codes that can be performed several times without being rewritten
- What is the format of the instructions that the EVM can read?
EVM runs on every node and makes it possible to execute code on the network in such a way that all nodes are in consensus what the results should be. - What is the relationship between the programming language Solidity and Bytecode?
Solidity language when compiled = Bytecode - Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin uses script which is limited and is not turin complete whereas Ethereum is built as a Turing complete blockchain. - What is a Turing Complete programming language?
Turin complete where anything can be written and includes loops (repeat set of instructions).
1. What does the EVM do?
A: The Ethereum Virtual Machine executes the code of the smart contract and is runs on every node in the Ethereum network. I.e. it cannot be an Ethereum note without EVM.
2. What is the format of the instructions that the EVM can read?
A: It is in an a language proprietary to Ethereum called Solidity and Solidity uses a compiler to convert commands into bytecode.
3. What is the relationship between the programming language Solidity and Bytecode?
A: Solidity takes the commands and runs them through a compiler to convert to bytecode which it can then direct the CPU to execute.
4. Why canât Bitcoin run the same type of complex programs like Ethereum can?
A: BTC uses script which is not Turing Complete v. ETHâs Solidity which is Turing Complete.
5. What is a Turing Complete programming language?
A: Turing Complete language has the capability of performing mathematical calculations, e.g. multiple loops
-
The EVM is the software that reads and executes the byte code in the Ethereum smart contracts. Then, the EVM interacts with the CPU of the node.
-
EVMs read the smart contact language in byte code
-
Solidity is the programing language that is used on Ethereum. When executing code to smart contracts that code is put through a compiler which translates that code into something called Byte code.
-
Bitcoin canât run the same type of smart contacts like Ethereum because Bitcoinâs language " Script" is not Touring complete and canât handle loops.
-
A Turing Complete language can handle " Loops" as well pretty much anything that can be programed ( in theory )
- What does the EVM do?
EVM allows developers to create decentralized applications.
- What is the format of the instructions that the EVM can read?
EVM can read Byte code.
3)What is the relationship between the programming language Solidity and Bytecode?
Solidity is a simple to read language that is compiled into to Bytecode .
- Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin is not turing complete language, it can only run simple programs, Scirpt.
5 What is a Turing Complete programming language?
In theory, there is no limit what can be programed. Its very flexible and unlimited.
- The Ethereum Virtual Machine is a piece of code which reads smart contracts that run on computers in the network.
- The EVM reads the byte code of a smart contract.
- Smart contracts are created in solidity, but are turned into byte code as EVM reads the byte code.
- Because the scripting language isnât turning complete while ETH is.
- A Turing complete programming language allows complete latitude and flexibility for the user. There is no limits to which program can be used and what it can be utilized for.