From Newsgroup: comp.lang.python
Dear All,
We are happy to announce a new
edition of the Dogelog Player:
- Enhanced catch/3:
We noticed that catch/3 causes a friction in
'$YIELD'/1. So we redesigned its implementation
by refraining from using the host programming
language stack. The engine now offers an exception
handler stack, and the Prolog interpreter trampolin
unwinds these exception handlers upon a
Prolog or host error.
- New call_cleanup/3:
The new predicate call_cleanup/3 supplants the
old predicate once_cleanup/3. Like catch/3 it
now features an implementation that refrains
from using the host programming language stack.
Its implementation makes use of a rogue '$CUT'/1
which is realized by choicepoint scanning
and continuation manipulation.
- Task Channels:
To lower the footprint of the core there are
new libraries library(timer) and library(tasks).
The later library offers a new predicate task_join/1
which is abortable. Further the library offers
predicates chan/1, recv/2 and send/2 to deal with
channels that live in the cooperative
multitasking realm.
Have Fun!
Jan Burse, September 17, 2026,
https://www.herbrand.ai/
--- Synchronet 3.22a-Linux NewsLink 1.2