Castlerock
HOME · POSTS · BOOKSHELF · LINKS · QUOTES · FQA · CV · ABOUT

Virtual Machines

First Published: November 13, 2016
Last Updated: October 11, 2019

The SECD machine is a virtual machine intended as the target for functional programming languages. The acronym stands for Stack, Environment, Control, and Dump, the four registers of the machine.

The SECD machine is stack based.

The WAM was designed by David H. D. Warren for the purpose of executing Prolog.

The BEAM virtual machine is the most commonly used machine for executing Erlang. Note that the link above is somewhat old, and does not describe the BEAM in use today. But it is still a nice description of a virtual machine. Also note that there has existed other VMs for Erlang, most notably the JAM.

The EVM (Ethereum Virtual Machine) is the virtual machine that underpins the Ethereum network.