Prolog Language Performance Abstract machine


For efficiency, Prolog code is typically compiled to abstract machine code before it is run.

Many different abstract machine architectures and variants have been proposed for efficient execution of Prolog programs. These include:

  • WAM, the Warren Abstract Machine
  • TOAM, an abstract machine used in B-Prolog.
  • ZIP, used for example as the basis for the VM of SWI-Prolog
  • VAM, a research architecture developped in Vienna.