From Newsgroup: comp.lang.javascript
Dear All,
We are happy to announce a new edition
of the Dogelog Player:
- Dot Notation:
We borrowed from formerly Jekejeke Prolog
optionable custom binary forms. An operator
declaration such as op(100, yfx, '.') does
now parse and unparse the dot notation A.B
as '$DOT'(A,B). Avoiding a functor clash
with the consing notation [A|B]. The
implementation is 100% Prolog, and thus
uniformly available for the JavaScript,
Python and Java target.
- Arrow Notation:
We borrowed from formerly Jekejeke Prolog
optionable custom variadic forms. An operator
declaration such as op(700, xfx, '=>') does
now parse and unparse the arrow notation
(P => G) as '$ANON'(H,K,B,...). Compared to
library(lambda), it leads to more efficient
single step reductions inside the new
library(arrow). Again uniformly available
for the JavaScript, Python and Java target.
- DCG phrase/3:
This was a gap that slipped our attention.
It turns out that Dogelog Player didn't have
DCG phrase/3, although it had already
DCG (-->)/2. Luckily the step from (-->)/2
to phrase/3 is relatively small and this
release features this predicate. Turns out it
can be used for Strudel style music coding.
Have Fun!
Jan Burse,
https://www.herbrand.ai/ , 24.11.2025
--- Synchronet 3.21a-Linux NewsLink 1.2