Emulating π-WAM in Dogelog Player (Re: Dogelog Pla yer on a A18 Everest)

Mild Shock <[email protected]> Tue, 30 Jun 2026 02:08:38 +0200
Newsgroups comp.lang.python
Message-ID <[email protected]>
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
>