Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 26 |
Nodes: | 6 (0 / 6) |
Uptime: | 20:40:42 |
Calls: | 484 |
Calls today: | 1 |
Files: | 1,074 |
Messages: | 99,249 |
Dear All,
We are happy to announce a new edition
of the Dogelog Player:
- Output Flags:
The output streams now carry flags. The mask
0x00000004 indicates that the end-user wants
some fancy output. The Prolog core offers a
hook on sys_print_error/2, so that errors and
warnings can be styled. Works seemless for the
browser and the console via library(markup).
- Write Option:
The write routine now offers an additional option.
The Prolog core offers a hook for put_atom/2,
so that the output tokens produced by the predicate
write_term/2 can be run through a pygmentation
routine. When using class names instead of color
values, style sheets in the browser allow color
switching between dark and light mode.
- Improved Top-Level:
To reduce footprint and startup time in scripting
mode, the top-level has been refactored into an
optional separate Prolog text library(session).
The Prolog text offers print error and put atom
hooks, and as well as some logic so that the
listing predicate listing/[0,1] and answer
substitutions (?-)/1 deliver fancy output if
the output stream desires so.
Have Fun!
Jan Burse, 19.06.2025, https://www.herbrand.ai/
Dogelog Player is a Prolog system that is written
in 100% Prolog. Formerly Jekejeke Prolog was a
Prolog system that was written in 100% Java. We
created a new version of Jekejeke Prolog that
has 50% Prolog from Dogelog Player and is
still multi-threaded.
We trashed everything beyond the core of Jekejeke
Prolog and adopted the Dogelog Player libraries
and top-level, even library(markup) works! The
new Jekejeke Prolog is significantly slower than
Dogelog Player, almost a factor two. But it can still
serve for some cherry picking.
See also:
Dogelog Player goes Multi Threading https://medium.com/@janburse_2989/6720695470fe