Pure I/O in Dogelog Player (Re: ANN: Dogelog Player 1.3.3 (Dark Mode))
Mild Shock <[email protected]> Thu, 26 Jun 2025 01:19:00 +0200
| Newsgroups | comp.lang.python |
|---|---|
| Message-ID | <[email protected]> |
Dogelog Player is a Prolog system mainly written in Prolog itself. A library(pio) for Pure I/O is not part of this Prolog systems. Herein we report a successful experiment of implementing such a library. The library has a Web 2.0 realization since the streams can even originate from URLs. Instead of going with memory mapping or attributed variables, our main idea is to use āCā/3 to detect Haskell lazy and realize it with change_arg/3. The grammar backtracking is potentially unlimited. There is a separation of concern into a get_lazy/3 and the unit need not be codes. See also: Pure I/O in Dogelog Player https://medium.com/@janburse_2989/1dc0afb9dcae Mild Shock schrieb: > 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/