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


Groups > comp.lang.javascript > #124375 > unrolled thread

ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)

Started byMild Shock <janburse@fastmail.fm>
First post2024-11-02 18:50 +0100
Last post2024-12-04 23:48 +0100
Articles 6 — 1 participant

Back to article view | Back to comp.lang.javascript


Contents

  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

#124375 — ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)

FromMild Shock <janburse@fastmail.fm>
Date2024-11-02 18:50 +0100
SubjectANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)
Message-ID<vg5opm$cig5$3@solani.org>
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

[toc] | [next] | [standalone]


#124376

FromMild Shock <janburse@fastmail.fm>
Date2024-11-07 11:53 +0100
Message-ID<vgi67u$9n2c$2@solani.org>
In reply to#124375
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

[toc] | [prev] | [next] | [standalone]


#124377 — Compiling λ-Prolog in Dogelog Player (Re: ANN: Dogelog Player 1.2.4)

FromMild Shock <janburse@fastmail.fm>
Date2024-11-16 08:23 +0100
SubjectCompiling λ-Prolog in Dogelog Player (Re: ANN: Dogelog Player 1.2.4)
Message-ID<vh9h8u$8es1$2@solani.org>
In reply to#124376
Dogelog Player is a Prolog system written in 100%
Prolog. We discovered that XSB Prolog provides an
interesting predicate unnumbervars/3 which we
recently ported to Dogelog Player. Together with
numbervars/3 it can be used to compile and
execute λ-Prolog.

We moved from Prolog to λ-Prolog without overdoing
it. Our only concession to lambda calculus was
alpha conversion to avoid variable clashes. We
could not only demonstrate “what-if” queries, but
also parametrization of unchanged
predicate arguments.

See also:

Compiling λ-Prolog in Dogelog Player
https://twitter.com/dogelogch/status/1857682740411355281

Compiling λ-Prolog in Dogelog Player
https://www.facebook.com/groups/dogelog

[toc] | [prev] | [next] | [standalone]


#124378 — Re: F***ing moron failed to scrap website - Dec, 2024

FromMild Shock <janburse@fastmail.fm>
Date2024-11-18 20:28 +0100
SubjectRe: F***ing moron failed to scrap website - Dec, 2024
Message-ID<vhg4h2$c53p$3@solani.org>
In reply to#124375
$ whois hostinger.com

Contact Email: abuse-tracker@hostinger.com
Contact Phone: +37064503378

My trust pilot review:

1 Star

No ticket system
No ticket system. Writing an abuse report goes
into black hole. Supports criminals that create
phishing website.

Date of experience: November 18, 2024

Mild Shock schrieb:
> Hey Hostinger,
> 
> Your criminal client is the laughing stock of the internet.
> 
> F***ing moron failed to scrap website - Dec, 2024
> https://twitter.com/dogelogch/status/1858585442771222787
> 
> F***ing moron failed to scrap website - Dec, 2024
> https://www.facebook.com/groups/dogelog
> 
> Bye
> 
> 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
> 

[toc] | [prev] | [next] | [standalone]


#124379 — Anomaly Detection with Dogelog Payer (Was: ANN: Dogelog Player 1.2.4)

FromMild Shock <janburse@fastmail.fm>
Date2024-11-23 02:37 +0100
SubjectAnomaly Detection with Dogelog Payer (Was: ANN: Dogelog Player 1.2.4)
Message-ID<vhrbju$166t1$3@solani.org>
In reply to#124375
Dogelog Player is a Prolog system written
in 100% Prolog. We discovered that XSB Prolog
provides an interesting predicate unnumbervars/3
and did a rework of library(aggregate). We show
how the library can be used for anomaly
detection in time series.

Together with the non-ISO core extension call_nth/2
from library(sequence) one can quickly define
sliding windows computations in Prolog itself.
We compute moving variance and moving delta for
actual bitcoin market prices. Using both indicators
we can identify an abnormally in november.

Anomaly Detection with Dogelog Payer
https://twitter.com/dogelogch/status/1860129082723467710

Anomaly Detection with Dogelog Payer
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

[toc] | [prev] | [next] | [standalone]


#124380

FromMild Shock <janburse@fastmail.fm>
Date2024-12-04 23:48 +0100
Message-ID<viqm8e$qlac$2@solani.org>
In reply to#124375
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/1864435209619329412

bun.js Support 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

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.javascript


csiph-web