The *(term) for a machine (_(computing system)) that is designed for and intended to be used only as software within another machine.  A virtual machine has a defined interface and behavior within its environment.  This interface is often, (but not necessarily) implemented using _(bytecode), which the virtual machine interprets as its own instructions.

Virtual machines are distinguished from _(programming languages) by virtue of being active (_(Actor)s?) that provide the environment or _(context) for the programs that they run, while a programming language is a static entity, with a runtime environment or interpreter being required to actually use the programs.

Interpreters are in fact VMs, and may be implemented by on-the-fly translation to another _(lower-level|low-level) VM, and so on until you reach one machine that might be less virtual.

<ul class="links"
<li>Reviews of _(Virtual Machines).
</ul>