Dogelog Player is a Prolog system for the
JavaScript, Python and Java target platform.
Inside the browser the library(markup) offers
XSS injection safe markup generation. We extended
the library(markup) towards a heap friendly XML
streaming on all target platforms.
Conceptually we were inspired by Java’s class
FilterWriter. Text payload is automatically XML
escaped and tags are written in that the underlying
writer is directly called. As a test case we wrote
a colorizer in 100% Prolog, so that we can phase
out our old Java code.
See also:
XML Streaming for Dogelog Player https://twitter.com/dogelogch/status/1736864678616207768
XML Streaming for Dogelog Player
https://www.facebook.com/groups/dogelog
Mild Shock schrieb:
Dear All,
We are happy to announce a new
edition of the Dogelog player:
- Multi Measurement:
The library(runner) was enhanced to be
able to perform multiple measurements when
used as a benchmark harness. This feature
can for example be used to measure execution
time and garbage collection time, provided
the Prolog system offers such a statistics/2 key.
- JDK 21 Bytecode:
Like we were phasing out formerly Jekejeke
Prolog we are currently also phasing out
JDK 8 Bytecode. There is a grace period
but the transition to JDK 21 Bytecode is
already seen in the new artefacts index9.zip
and dogelog9.zip for the Dogelog Player
on the Java platform.
- Generational GC:
The garbage collector of Dogelog Player
was enhanced to have a more refined triggering
and to also use a faster generational variant
when appropriate. This was implemented for
all target platforms and we see performance
gains Java 42%, JavaScript 51% and Python 61%.
Have Fun!
Jan Burse, 30.11.2023, http://www.xlog.ch/
Dogelog Player is a 100% Prolog written Prolog
interpreter. We started seeding the implementation
of a common HTTP Server library for all targets
JavaScript, Python and Java. Lets take a snapshot of
the current API and report some performance experience.
We could complete a minimal library(spin) and
demonstrate the correct UTF-8 HTTP streaming of a
text stream. We then measured the local delivery of
a hobbit.txt file of 50'000 bytes, we also run
against SWI-Prolog. We were positively surprised by
the performance of JavaScript, Java and SWI-Prolog.
Only the Python performance was a little disappointing.
See also:
Streaming HTTP for Dogelog Player https://twitter.com/dogelogch/status/1748477496364818517
Streaming HTTP for Dogelog Player
https://www.facebook.com/groups/dogelog
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 376 |
Nodes: | 16 (2 / 14) |
Uptime: | 50:21:48 |
Calls: | 8,040 |
Calls today: | 4 |
Files: | 13,037 |
Messages: | 5,831,696 |