Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.javascript > #124376

Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)

From Mild Shock <janburse@fastmail.fm>
Newsgroups comp.lang.javascript
Subject Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)
Date 2024-11-07 11:53 +0100
Message-ID <vgi67u$9n2c$2@solani.org> (permalink)
References <vg5opm$cig5$3@solani.org>

Show all headers | View raw


A further library(util/tree) was realized, that
uses the rules of Okasaki's Red-Black tree with
destructive updates. change_arg/3 has become
our favorite gadget to realize imperative
datastructures in Prolog.

No setup_call_cleanup/3 brakets are needed, since
we can rely on its Prolog garbage collector
integration. We compared hash table versus red
black tree. For the million row challenge we see
an overhead below 10%.

See also:

Okasaki Red-Black Trees in Dogelog Player
https://twitter.com/dogelogch/status/1854471966234730536

Okasaki Red-Black Trees in 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:
> 
> - 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

Back to comp.lang.javascript | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable) Mild Shock <janburse@fastmail.fm> - 2024-11-02 18:50 +0100
  Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable) Mild Shock <janburse@fastmail.fm> - 2024-11-07 11:53 +0100
    Compiling λ-Prolog in Dogelog Player (Re: ANN: Dogelog Player 1.2.4) Mild Shock <janburse@fastmail.fm> - 2024-11-16 08:23 +0100
  Re: F***ing moron failed to scrap website - Dec, 2024 Mild Shock <janburse@fastmail.fm> - 2024-11-18 20:28 +0100
  Anomaly Detection with Dogelog Payer (Was: ANN: Dogelog Player 1.2.4) Mild Shock <janburse@fastmail.fm> - 2024-11-23 02:37 +0100
  Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable) Mild Shock <janburse@fastmail.fm> - 2024-12-04 23:48 +0100

csiph-web