Aeternity will support 3 VMs. (1) A version of the Ethereum Virtual Machine (EVM), (2) The Functional Typed Warded Virtual Machine (FTWVM) and (3) The High Level Machine (HLM). Each VM has a currently preferred smart contract language meaning Aeternity will offer more flexibility to developers who might want to design contracts with different trade offs. The result of this is that Aeternity can easily use Solidity → the current favourite of the EVM, Sophia → a typed functional language that compiles to FTWVM and Varna → a language similar to Bitcoin’s Script language that compiles to HLM.