Ethereum virtual machine (EVM) operates as a
stack machine with a depth of 1024 items (256-bit
hashes). Any implementation of the EVM (Py-EVM,
EthereumJS, etc) most follow the instructions
in the Etherum Yellow paper. Smart contracts
are executed by compiling to opcodes which
translates to standard operations such as
SUB, etc together with blockchain
specific operations such as
BLOCKHASH, etc. There are several languages
common. There are also Yul and Yul+ which are languages closer to the EVM. Solidity is the most
Object-oriented, curly-brackets and statically typed.
How to get started with smart contract development in Solidity? Many recommend tutorials such as CryptoZombies where you learn Solidity by making a blockchain game.