From Newsgroup: comp.lang.python
Dear All,
We are happy to announce a new
edition of the Dogelog Player:
- Enhanced common:
Triggered by SWI-Prologs new built-ins,
we did a revision of library(cyclic) now
exposing term_minimal/2 and term_decompose/2.
Turns out we could also speed-up distinct/1
and aggregate/3, by using term_minimal/2
alone in the deduplication phase. And
then for aggregate/3 deploying a Schwartzian
Transform with term_decompose/2 in
the sorting phase.
- Enhanced top-level:
We also did a revision of the top-level.
For example answer substitutions are now
shown more compact, so that a query X = f(A,Y),
Y = f(B,X) can keep its shape. Further
the debugger now uses the visibility rules
of listing/[0,1]. Even overriding the
provenance of goals arguments and only
prompting in case they branch back
into user clauses.
- New undo/1:
Realizing the analogue to our recent rogue
'$CUT'/1 for cleanup goals, this time not
scanning the choice points but the variable
trail to find undo goals, we could arrive
at a undo/1. Because of atomicity concerns,
its not directly exposed, and subsequently
the user facing API has now new set_arg/3
and setup_undo/2 only.
Have Fun!
Jan Burse, September 28, 2026,
https://www.herbrand.ai/
--- Synchronet 3.22a-Linux NewsLink 1.2