Hi,
Dogelog Player is a Prolog system for the
JavaScript, Python and Java target that borrows
much of its design from formerly Jekejeke Prolog.
While Dogelog Player shipped only with first
argument indexing for almost 4 years, we now added
multi-argument just-in-time indexing.
For programs one sees fewer spurious choice
points. For the dynamic database, in queries
one sees a speed-up of almost a factor M, where
M is the size of the index map. For updates the
speed-up materializes less, due to the overhead
of our 100% Prolog written insert operations.
Bye
See also:
Just-in-Time Indexing in Dogelog Player
https://medium.com/2989/69200b90ccec
Mild Shock schrieb:
Dear All,
We are happy to announce a new edition
of the Dogelog Player:
- Enhanced core (0rNaN):
Special values are numbers, but neither
integer nor float. We introduced a further
special value, namely 0rNaN which stands
for not a number. Unlike the IEEE proposal,
we didn't extend arithmetic comparisons such
as max/3, (<)/2, etc... Only parsing/unparsing
and foreign function interface (FFI)
support was introduced.
- Precomputed Hashes:
Java programmers are familiar with the
hashCode() contract and with the programming
pattern of a cached hash. We went a step further
and gave the already existing frozen compounds
of Dogelog player an additional precomputed
.hash field. With amazing speed-up for built-ins
such as term_hash/2, (==)/2, etc..
- Assertion Sharing:
Precomputed hashes shine when combined with
NO-COPY mechanisms in the dynamic database,
notoriously difficult for WAM machines but
easy for Heap based Prolog systems such as
Dogelog Player. So far we provided only
program sharing (PS), this release also
features assertion sharing (AS).
Have Fun!
Jan Burse, https://www.herbrand.ai/ , 20.03.2026
| Sysop: | DaiTengu |
|---|---|
| Location: | Appleton, WI |
| Users: | 1,113 |
| Nodes: | 10 (0 / 10) |
| Uptime: | 492335:08:29 |
| Calls: | 14,238 |
| Files: | 186,312 |
| D/L today: |
3,401 files (1,104M bytes) |
| Messages: | 2,514,838 |