Path: csiph.com!weretis.net!feeder8.news.weretis.net!reader5.news.weretis.net!news.solani.org!.POSTED!not-for-mail From: Mild Shock Newsgroups: comp.lang.javascript Subject: Re: ANN: Dogelog Player 1.2.4 (Non-Backtracking Hashtable) Date: Wed, 4 Dec 2024 23:48:46 +0100 Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Wed, 4 Dec 2024 22:48:46 -0000 (UTC) Injection-Info: solani.org; logging-data="873804"; mail-complaints-to="abuse@news.solani.org" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0 SeaMonkey/2.53.19 Cancel-Lock: sha1:/Ax6R79yMfZ/DByJjDQ0nhcIGZw= In-Reply-To: X-User-ID: eJwNx0kBwDAIBEBLEK4gJyzgX0I7vzFxdoS6udradv8xeE4oydaMW3rvqftoL7TOkgzdfQA12kI4OcEHJSofdIQWIQ== Xref: csiph.com comp.lang.javascript:124380 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