Out of curiosity went looking for a list of historically significant virtual or abstract machines for Prolog and really could not find one.
The problems in searching are
They are sometimes listed with virtual machines like JVM making it hard to tell if it was for Prolog.
Seem to all use the word abstract in their name which is often associated with virtual in the results so they get lost in the noise.
WAM is basically the only one mentioned in many results and even in research papers that talk about many abstract or virtual machines.
Unless you know of a few others such as BAM, VAM and SLG-WAM you can not even give examples to help the search. Even then that does not get much better results.
Sometimes you find a larger list but from years ago that oftens include many research machines that were only just that.
Here are some that I am aware of, what are others.
BAM (Bytecode Abstract Machine) is a low-level virtual machine used by many Prolog systems to execute Prolog code. It provides a platform-independent representation of Prolog code, allowing Prolog programs to be executed on any machine that has a BAM interpreter.
WAM (Warren Abstract Machine) is another popular virtual machine used by Prolog systems. It was developed by Alan Warren and is widely used for its efficiency and flexibility. The WAM is used to execute compiled Prolog code, and it provides a platform-independent representation of Prolog code.
VAM (Virtual Abstract Machine) is another virtual machine used by Prolog systems. Like the BAM and WAM, it provides a platform-independent representation of Prolog code and is used to execute compiled Prolog code.
SLG-WAM (Stratified Logic Programming WAM) is a variant of the WAM that is optimized for use with constraint logic programming. The SLG-WAM provides efficient support for constraint solving and has been used in a wide range of applications, including natural language processing, constraint solving, and theorem proving.
That was one of the papers I found in checking. It was so good I checked if it was listed in Useful Prolog References, it was.
IIRC it was where I found VAM.
It was a very informative paper and also noted:
VLSI-BAM
PLM
One thing that was hard in a cursory search of the paper was that the word machine is often used, but does that mean a physical machine, virtual machine or abstract machine. You have to read each section in detail to know which is correct when used.
It is also a very old paper: 1994.
SICStus Prolog—the first 25 years
– SICStus Abstract Machine (SAM) and RISCified SAM (RISS) (Haygood 1994).
The BinProlog Experience: …
– BinWAM
Working my way down the list of references from Reinventing paper
I assume you’ve looked at the SWI-Prolog bibliography – it has pointers to a few abstract machines (including the one that SWI-Prolog is based on: Bowen et al)
Not yet because I have been through many of those papers a few times and know there is only a handful of such machines noted in those papers that made it into a production system and I think I have them all in the list and also know that Jan W. could tell me of one not in my list faster than I can search all of them.
That is one I don’t ever recall seeing, will visually scan it for info.