Sujet : Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)
De : janburse (at) *nospam* fastmail.fm (Mild Shock)
Groupes : comp.lang.prologDate : 04. Dec 2024, 23:47:29
Autres entêtes
Message-ID : <viqm60$qlac$1@solani.org>
References : 1
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0 SeaMonkey/2.53.19
Dogelog Player is a Prolog system that is 100%
written in Prolog itself. Previously only tested
with node.js, we produced a release that is able
to run on the newly available Bun command line
JavaScript engine. bun.js itself is realized with
the novel programming language Zig.
To use bun.js we fixed a programming error in that
we replaced our operating system success test by
falsy tests (!err). We found 4 non-critical discrepancies
among novacore and libraries. Possibly due to an older
JavaScript version, bun.js was slightly slower
than node.js.
bun.js Support in Dogelog Player
https://twitter.com/dogelogch/status/1864435209619329412bun.js Support in Dogelog Player
https://www.facebook.com/groups/dogelogMild Shock schrieb:
Dear All,
We are happy to announce a new edition of
the Dogelog player:
- New library(misc/dict):
We have moved some predicates from the library(misc/json)
into our own library(misc/dict). We made sure that the
data structure of the Prolog dicts now follows the
input order semantics.
- New library(util/hash):
To enable the implementation of hash tables, Novacore
now has a term_hash/2 predicate. The implementation
differs from the Prolog dict in that change_arg/3 is
used for destructive updates. We have also dispensed
with the input order.
- Improved library(sequence):
Hash tables can easily be used to model sets of keys,
for example by using the value "true" as an indicator.
This allowed us to re-implement the distinct/1 predicate.
The use of numbervars/3 ensures that key variants
are identified.
Have Fun!
Jan Burse, http://www.xlog.ch/ , 02.11.2024