Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #124429
| Path | csiph.com!weretis.net!feeder8.news.weretis.net!reader5.news.weretis.net!news.solani.org!.POSTED!not-for-mail |
|---|---|
| From | Mild Shock <janburse@fastmail.fm> |
| Newsgroups | comp.lang.javascript |
| Subject | Goal Outlining for Dogelog Player (Was: Just-in-Time Indexing in Dogelog Player) |
| Date | Thu, 9 Apr 2026 12:51:39 +0200 |
| Message-ID | <10r80br$f1q$2@solani.org> (permalink) |
| References | <10pk07c$8ek8$2@solani.org> <10qhhpt$1057b$4@solani.org> |
| MIME-Version | 1.0 |
| Content-Type | text/plain; charset=UTF-8; format=flowed |
| Content-Transfer-Encoding | 7bit |
| Injection-Date | Thu, 9 Apr 2026 10:51:39 -0000 (UTC) |
| Injection-Info | solani.org; logging-data="15418"; mail-complaints-to="abuse@news.solani.org" |
| User-Agent | Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0 SeaMonkey/2.53.23 |
| Cancel-Lock | sha1:2oejqZUyDS5AHTdQzPF23X/Mk+g= |
| X-User-ID | eJwFwQkBwDAIA0BLfAlUTkfBv4TdwansDIKBxcaa2o7mnOvVjX18TOhXppoNIcb5rUse85K4pd4j9TTvwQ9EjBSn |
| In-Reply-To | <10qhhpt$1057b$4@solani.org> |
| Xref | csiph.com comp.lang.javascript:124429 |
Show key headers only | View raw
Hi, The handling of cyclic terms inside Dogelog Player is relatively young, it only arrived end of 2025, almost 4 years after the inception of the Prolog system. We found a leftover subsumes_term/2. Making it fit for cyclic terms triggered an interesting venture into negation as failure. We found a charming implementation, not extremly fast failure capable, but easy to bootstrap from built-ins such as term_variables/2, (=)/2 and (==)/2. To overcome some (\+)/1 performance limitation we introduced goal inlining and outline to the clause translation and untranslation. Bye See also: Goal Outlining for Dogelog Player https://medium.com/2989/f589172c7f8e Mild Shock schrieb: > Hi, > > Dogelog Player is a Prolog system for the > JavaScript, Python and Java target that borrows > much of its design from formerly Jekejeke Prolog. > While Dogelog Player shipped only with first > argument indexing for almost 4 years, we now added > multi-argument just-in-time indexing. > > For programs one sees fewer spurious choice > points. For the dynamic database, in queries > one sees a speed-up of almost a factor M, where > M is the size of the index map. For updates the > speed-up materializes less, due to the overhead > of our 100% Prolog written insert operations. > > Bye > > See also: > > Just-in-Time Indexing in Dogelog Player > https://medium.com/2989/69200b90ccec > > Mild Shock schrieb: >> Dear All, >> >> We are happy to announce a new edition >> of the Dogelog Player: >> >> - Enhanced core (0rNaN): >> Special values are numbers, but neither >> integer nor float. We introduced a further >> special value, namely 0rNaN which stands >> for not a number. Unlike the IEEE proposal, >> we didn't extend arithmetic comparisons such >> as max/3, (<)/2, etc... Only parsing/unparsing >> and foreign function interface (FFI) >> support was introduced. >> >> - Precomputed Hashes: >> Java programmers are familiar with the >> hashCode() contract and with the programming >> pattern of a cached hash. We went a step further >> and gave the already existing frozen compounds >> of Dogelog player an additional precomputed >> .hash field. With amazing speed-up for built-ins >> such as term_hash/2, (==)/2, etc.. >> >> - Assertion Sharing: >> Precomputed hashes shine when combined with >> NO-COPY mechanisms in the dynamic database, >> notoriously difficult for WAM machines but >> easy for Heap based Prolog systems such as >> Dogelog Player. So far we provided only >> program sharing (PS), this release also >> features assertion sharing (AS). >> >> Have Fun! >> >> Jan Burse, https://www.herbrand.ai/ , 20.03.2026 >
Back to comp.lang.javascript | Previous | Next — Previous in thread | Find similar
ANN: Dogelog Player 2.1.6 (Assertion Sharing) Mild Shock <janburse@fastmail.fm> - 2026-03-20 18:30 +0100 Goal Outlining for Dogelog Player (Was: Just-in-Time Indexing in Dogelog Player) Mild Shock <janburse@fastmail.fm> - 2026-04-09 12:51 +0200
csiph-web