Executing π-WAM with Dogelog Player (Re: Emulating π-WAM in Dogelog Player)
Mild Shock <[email protected]> Sat, 4 Jul 2026 01:02:35 +0200
| Newsgroups | comp.lang.python |
|---|---|
| Message-ID | <[email protected]> |
Hi, A π-WAM combines ideas from π-calculus and Warren Abstract Machine. We already made a compiler and emulator, 100% written in Prolog, and we could demonstrate is/2 and between/3. In this post we introduce executors, written in the Dogelog Player target host languages. On the Prolog side we added packing the machine code into 32-bit instructions. On the host targets side, for Java, JavaScript and Python, we added a π-WAM virtual machine. Interestingly the Java based machine can execute our testcase in 80 ms, while GNU Prolog takes 200 ms. Bye See also: Executing π-WAM with Dogelog Player https://medium.com/2989/cc7bd3e0b652 Mild Shock schrieb: > Hi, > > We are currently setting sail to give Dogelog Player > a more janus faced backend. Until now we had only > one code compilation idea that realizes our Prolog > VM. With π-WAM we add a second Prolog VM to the same > Prolog system, with the aim to use it for > specialized tasks. > > Optimized for speed the π-WAM is very primitive. > The compiler capitalizes that code blocks are > relocatable. The emulator dispatches π-WAM in/1 > and out/1 commands to the usual Prolog read and > write predicates. We could demonstrate a is/2 > example and a between/3 example. > > See also: > > Emulating π-WAM in Dogelog Player > https://medium.com/2989/de9cd29c7d37 > > Mild Shock schrieb: >> Hi, >> >> Dogelog Player is a Prolog system for JavaScript, >> Python and Java targets. It has still some macOS >> genes, since couple of years ago our development >> environment featured a Mac Book. We recently did >> a cross testing exercise for Dogelog Player on >> a brand new Mac Neo. >> >> In our Zoo of AI laptops we had to rank the Mac >> Neo third. Still the Mac Neo, a beautifully silent >> and affordable product, excells for example in >> JavaScript and clearly leaves behind the other >> Think ARM machine, since we couldn’t find a PyPy >> Windows ARM build. >> >> See also: >> >> Dogelog Player on a A18 Everest >> https://medium.com/2989/80bae0494236 >> >> Mild Shock schrieb: >>> Dear All, >>> >>> We are happy to announce a new edition >>> of the Dogelog Player: >>> >>> - Tabling Directive: >>> It turns out that our term expansion is fit >>> enough to provide a tabling directive table/1. >>> The directive will prepare a query and a answer >>> cache for the given predicate, as well as a >>> wrapper. The current version does not yet >>> realize tabling of non-wellfounded recursion. >>> >>> - Hash Indexes: >>> The tabling does not use a table space separate >>> from the dynamic database, instead the caches >>> are realized through dynamic predicates. To >>> profit even more from our ground term sharing, >>> we now offer pre-computed hash indexes. For >>> large ground terms, the tabling mechanism >>> can then exhibit emergent local interning. >>> >>> - Rubber Band: >>> The format/[2,3] predicates got a facelift and >>> we now support the rubber band ~`Ct and the >>> column margin ~N|. The challenge was to keep >>> the streaming behaviour, which we could keep >>> for the first rubber band separated segment. >>> A further challenge was scattering character >>> richtext, which the format specifiers >>> ~defgq can produce. >>> >>> Have Fun! >>> >>> Jan Burse, https://www.herbrand.ai/ , 01.05.2026 >> >