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


Groups > comp.lang.prolog > #14250 > unrolled thread

ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)

Started byMild Shock <janburse@fastmail.fm>
First post2024-11-02 18:49 +0100
Last post2024-12-04 23:47 +0100
Articles 10 — 2 participants

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


Contents

  ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable) Mild Shock <janburse@fastmail.fm> - 2024-11-02 18:49 +0100
    Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable) Aleks Grabowski <prolog@asap.mozmail.com> - 2024-11-04 07:49 +0000
    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 (Was: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)) Mild Shock <janburse@fastmail.fm> - 2024-11-16 08:17 +0100
    F***ing moron failed to scrap website - Dec, 2024 Mild Shock <janburse@fastmail.fm> - 2024-11-18 20:08 +0100
      Trust pilot report (Was: F***ing moron failed to scrap website - Dec, 2024) Mild Shock <janburse@fastmail.fm> - 2024-11-18 20:26 +0100
        Does the ISO core standard want to point to Cyprus Mafia? Mild Shock <janburse@fastmail.fm> - 2024-11-23 10:05 +0100
          Still the laughing stock of the internet (Was: Does the ISO core standard want to point to Cyprus Mafia?) Mild Shock <janburse@fastmail.fm> - 2024-11-23 10:10 +0100
    Anomaly Detection with Dogelog Payer (Was: ANN: Dogelog Player 1.2.4) Mild Shock <janburse@fastmail.fm> - 2024-11-23 02:35 +0100
    Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable) Mild Shock <janburse@fastmail.fm> - 2024-12-04 23:47 +0100

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

FromMild Shock <janburse@fastmail.fm>
Date2024-11-02 18:49 +0100
SubjectANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable)
Message-ID<vg5onm$cig5$1@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]


#14252

FromAleks Grabowski <prolog@asap.mozmail.com>
Date2024-11-04 07:49 +0000
Message-ID<vg9u9e$rfks$1@dont-email.me>
In reply to#14250
Date :Sat, 2 Nov 2024 18:49:42 +0100. Mild Shock wrote:
> 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.
> 

Hi all,

If you happen to use Arch Linux, be noted that AUR package was also 
updated.

https://aur.archlinux.org/packages/dogelog-node
https://aur.archlinux.org/packages/dogelog-java
https://aur.archlinux.org/packages/dogelog-py

-- 
BR,
Alex

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


#14267

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


#14301 — Compiling λ-Prolog in Dogelog Player (Was: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable))

FromMild Shock <janburse@fastmail.fm>
Date2024-11-16 08:17 +0100
SubjectCompiling λ-Prolog in Dogelog Player (Was: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable))
Message-ID<vh9gv5$8eku$1@solani.org>
In reply to#14267
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]


#14302 — F***ing moron failed to scrap website - Dec, 2024

FromMild Shock <janburse@fastmail.fm>
Date2024-11-18 20:08 +0100
SubjectF***ing moron failed to scrap website - Dec, 2024
Message-ID<vhg3c5$c4j5$1@solani.org>
In reply to#14250
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]


#14303 — Trust pilot report (Was: F***ing moron failed to scrap website - Dec, 2024)

FromMild Shock <janburse@fastmail.fm>
Date2024-11-18 20:26 +0100
SubjectTrust pilot report (Was: F***ing moron failed to scrap website - Dec, 2024)
Message-ID<vhg4cr$c53p$1@solani.org>
In reply to#14302
$ whois hostinger.com

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

My contact trurstpilot 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]


#14306 — Does the ISO core standard want to point to Cyprus Mafia?

FromMild Shock <janburse@fastmail.fm>
Date2024-11-23 10:05 +0100
SubjectDoes the ISO core standard want to point to Cyprus Mafia?
Message-ID<vhs5t1$iao1$1@solani.org>
In reply to#14303
Hi,

Friendly reminder to remove Jekejeke Prolog link here:

 > Possible character classification schemes to consider:
 > Jekejeke Prolog. Previous Drafts: 2013-10-16, 2011-03-22.
https://www.complang.tuwien.ac.at/ulrich/iso-prolog/

Yes www.jekejeke.ch is now run by some idiot Cyprus Mafia:

 > salesteam@ispsystem.com
 > 1-929-237-11-65
 > Cyprus
https://www.trustpilot.com/review/ispsystem.com

stackoverflow has meanwhile removed jekejeke.ch links.
You can see how this is done on SO. Just do not use a-tag
with href attribute. You can still mention jekejeke but don't

create traffic to jekejeke.ch. They might go into
phishing mode or spreading viruses at any moment of time.
Could be in fact Turkish Ransomware mafia or Russian

Ransomware mafia, or a combination. Maybe looking
for crypto ransom money to sponsor Terrorism. I don't think
ISO core standard wants to generate such internet traffic?

Bye

Mild Shock schrieb:
> $ whois hostinger.com
> 
> Contact Email: abuse-tracker@hostinger.com
> Contact Phone: +37064503378
> 
> My contact trurstpilot 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]


#14307 — Still the laughing stock of the internet (Was: Does the ISO core standard want to point to Cyprus Mafia?)

FromMild Shock <janburse@fastmail.fm>
Date2024-11-23 10:10 +0100
SubjectStill the laughing stock of the internet (Was: Does the ISO core standard want to point to Cyprus Mafia?)
Message-ID<vhs65f$ib08$1@solani.org>
In reply to#14306
Hi,

Did you know that "Mory Kante" translates
to "you are morons"?

The product has been discontinued already in 2021:
 > The website www.jekejeke.ch has been retracted, and links are defunct.
 > edit approved Dec 6, 2021 at 15:23
 > https://stackoverflow.com/tags/jekejeke/info

You won't get any useful brand association in the future, the
only association that has SEO is a song by Mory Kante:

https://www.google.ch/search?q=jekejeke

All you get is things like:

Mory Kante Yeke Yeke
https://www.youtube.com/watch?v=bJNiMNUSrw8

Bye

P.S.: 20 years ago, I wrote somewhere that the name Jekejeke was
created from the name Yeke Yeke, because the songs rythm reminds
me of backtracking Prolog search.

Mild Shock schrieb:
> Hi,
> 
> Friendly reminder to remove Jekejeke Prolog link here:
> 
>  > Possible character classification schemes to consider:
>  > Jekejeke Prolog. Previous Drafts: 2013-10-16, 2011-03-22.
> https://www.complang.tuwien.ac.at/ulrich/iso-prolog/
> 
> Yes www.jekejeke.ch is now run by some idiot Cyprus Mafia:
> 
>  > salesteam@ispsystem.com
>  > 1-929-237-11-65
>  > Cyprus
> https://www.trustpilot.com/review/ispsystem.com
> 
> stackoverflow has meanwhile removed jekejeke.ch links.
> You can see how this is done on SO. Just do not use a-tag
> with href attribute. You can still mention jekejeke but don't
> 
> create traffic to jekejeke.ch. They might go into
> phishing mode or spreading viruses at any moment of time.
> Could be in fact Turkish Ransomware mafia or Russian
> 
> Ransomware mafia, or a combination. Maybe looking
> for crypto ransom money to sponsor Terrorism. I don't think
> ISO core standard wants to generate such internet traffic?
> 
> Bye
> 
> Mild Shock schrieb:
>> $ whois hostinger.com
>>
>> Contact Email: abuse-tracker@hostinger.com
>> Contact Phone: +37064503378
>>
>> My contact trurstpilot 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]


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

FromMild Shock <janburse@fastmail.fm>
Date2024-11-23 02:35 +0100
SubjectAnomaly Detection with Dogelog Payer (Was: ANN: Dogelog Player 1.2.4)
Message-ID<vhrbh9$166t1$1@solani.org>
In reply to#14250
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]


#14344

FromMild Shock <janburse@fastmail.fm>
Date2024-12-04 23:47 +0100
Message-ID<viqm60$qlac$1@solani.org>
In reply to#14250
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.prolog


csiph-web