# Abstract VM

This is the topic of machines whose form is chosen so that it's easier to know certain properties of programs written for them.- Blue Calculus - The Blue Calculus is a Pi Calculus variant by Gérard Boudol
- Fusion Calculus - Fusion Calculus is yet another nicer variant of the Pi calculus, an abstract VM for parallel, mobile computations, for expressing concurrency
- GENS - GENS is a calculus (an abstract VM) of explicit lexical environments by Mario Blazevic; on top of GENS, you can implement the lambda calculus, your favorite object-oriented languages, etc
- Geometry of Interaction Machine - The Geometry of Interaction Machine, aka GOI Machine is an abstract VM which achieve evaluation of terms without performing term reduction, by following the path in the graph of the redex that would be extracted by reduction
- Join Calculus - The Join Calculus is a kind of declarative model (an abstract VM) of Actors, supporting type-safe distributed programming and expressing concurrency
- Lambda VM - Lambda calculus is not only an abstract calculus, but an Abstract VM: a kind of calculus of very basic abstraction
- Pi Calculus - Pi calculus is an abstract VM for parallel, mobile computations; for expressing concurrency
- Tube - A project developing methods of migration through reflection using an extended Scheme as both an Abstract VM and a Concrete VM: Scheme code with mobility primitives is metaprogrammed into normal Scheme code plus threading and networking
- Turing Machine - The first virtual machine (an abstract VM) successfully designed to embody universal computations is the Turing Machine

**Pages in this topic: ** Blue Calculus Fusion Calculus GENS Geometry of Interaction Machine Join Calculus Lambda VM Pi Calculus Tube Turing Machine

**Also linked from: ** Continuation-Passing Style Virtual Machines