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.0 (Binary Streams) Date: Sat, 1 Jun 2024 22:31:11 +0200 Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 1 Jun 2024 20:31:10 -0000 (UTC) Injection-Info: solani.org; logging-data="1135895"; 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.18.2 Cancel-Lock: sha1:DeG3J4rw03Jmeqw1VODEAZsV2dE= In-Reply-To: X-User-ID: eJwFwQkBA0EIA0BLsCQ8cgoF/xJuhubqE3A6eLwS6YW03ku9ObBjqbENN77pnYmSeVpvclTWirAEIv9mvw9PrRT8 Xref: csiph.com comp.lang.javascript:124361 Dogelog Player is a Prolog system 100% written in Prolog itself. This goal cannot always be sustained, especially when one wants to keep up with the competition. We show how a native implementation of sort/2 and keysort/2 lead us to a new take on our garbage collection. In the presence of native sort our trigger GC becomes blind resulting in a memory overflow. We therefore abandoned the corresponding bureaucracy and opted for a simpler metronome GC. The approach seems to work and we can demonstrate competitiveness. See also: Metronome GC for Dogelog Player https://twitter.com/dogelogch/status/1797000216849039827 Metronome GC for Dogelog Player https://www.facebook.com/groups/dogelog Mild Shock schrieb: > > Dogelog Player is a Prolog system 100% written > in Prolog itself. It is unique among Prolog systems > in that it does not have a concept of a stack frame, > so a DEC10 ancestor/1 built-in or even error > backtraces are not available by design. > > We were interested in a larger example to see whether > this design pays off. In the following we show an > implementation of Linear Conflict A* Search to > solve 8-puzzles and compare with newer Prolog > systems such as Scryer Prolog and Trealla Prolog. > > One gets an itch more heuristic power by adding > on top of Manhattan distance a goal conflict > measure. Performance wise SWI-Prolog still > leads the pack, but we leave behind both Scryer-Prolog > and Trealla Prolog. Interestingly we are also > not bugged by some break out in the 2nd test. > > See also: > > Linear Conflict A* Search in Dogelog Player > https://www.facebook.com/groups/dogelog > > Linear Conflict A* Search in Dogelog Player > https://twitter.com/dogelogch/status/1795710383682118115 > > Mild Shock schrieb: >> Dear All, >> >> We are happy to announce a new edition >> of the Dogelog player: >> >> - Quasi-Parallel Loader: >>    The Prolog text loader is now task aware. >> Although tasks are only quasi-parallel, issues >> of mutex might appear, which have been solved >> by using the meta call shield/1 which temporarly >> disables auto-yield. Back traces showing the >> current file loading chain are now task local. >> >> - Binary Files: >>    As before the target platforms JavaScript >> nodeJS, Python and Java support file system >> access. A new open option type/1 has been added, >> which can have the values 'text' or 'binary' and >> which defaults to 'text'. 'binary' is simply >> treated as 'text' with latin1 encoding instead of utf8. >> >> - Binary HTTP: >>    To give the benefit of a simple binary >> treatment to the HTTP protocol as well, i.e. no >> extra get_byte/[1,2] builtins and no extra byte >> array datatype, since codes and atoms can be used >> as before, we braught the type/1 option to the >> APIs of the HTTP clients and the HTTP servers. >> >> Have Fun! >> Jan Burse, 22.05.2024, http://www.xlog.ch/ >