Forums before death by AOL, social media and spammers... "We can't have nice things"
|    sci.math.symbolic    |    Symbolic algebra discussion    |    10,432 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 10,413 of 10,432    |
|    Mild Shock to Mild Shock    |
|    Lean CLP for Dogelog Player (Re: ANN: Do    |
|    28 Nov 25 14:22:44    |
      From: janburse@fastmail.fm              Hi,              Many existing and evolving constraint logic       programming projects resemble some ancient       invention of gunpowder. For example SWI-Prologs       9.3.35 corouting for delayed goals is mainly       based on unify hooks. We show how verify hooks,       already used in formerly Jekejeke Prolog, can       be braught to Dogelog Player in a 100% Prolog fashion.              Since the recent version of Dogelog Player       supports cyclic terms, we could let the Jini       out of the bottle, and provide the experimental       library(edge/railgun) to model delayed goals with       nothing else than Alain Colmerauers rational trees.       The result is a Lean CLP of ca. 100 lines of code,       that already provides a simple constraint (#\=)/2       and a global constraint all_different/1.              The results are encouraging. For problems that       are not over constrained, Dogelog Player leaves       existing Prolog systems clearly behind, showing       a 2-3x times speed-up against SWI-Prolog and a       20-30x times speed-up against Trealla Prolog.       For more constrained problems we suggest ommiting       forward checking in favor of a form of ahead of       time (AOT) variable ordering. With this approach       and for Sudoku problems we are then in the midfield       between SWI-Prolog and Trealla Prolog.              Bye              See also:              Lean CLP for Dogelog Player       https://qiita.com/j4n_bur53/items/addf1fc86856dd682dcb              Mild Shock schrieb:       > Dear All,       >       > We are happy to announce a new edition       > of the Dogelog Player:       >       > - Dot Notation:       > We borrowed from formerly Jekejeke Prolog       > optionable custom binary forms. An operator       > declaration such as op(100, yfx, '.') does       > now parse and unparse the dot notation A.B       > as '$DOT'(A,B). Avoiding a functor clash       > with the consing notation [A|B]. The       > implementation is 100% Prolog, and thus       > uniformly available for the JavaScript,       > Python and Java target.       >       > - Arrow Notation:       > We borrowed from formerly Jekejeke Prolog       > optionable custom variadic forms. An operator       > declaration such as op(700, xfx, '=>') does       > now parse and unparse the arrow notation       > (P => G) as '$ANON'(H,K,B,...). Compared to       > library(lambda), it leads to more efficient       > single step reductions inside the new       > library(arrow). Again uniformly available       > for the JavaScript, Python and Java target.       >       > - DCG phrase/3:       > This was a gap that slipped our attention.       > It turns out that Dogelog Player didn't have       > DCG phrase/3, although it had already       > DCG (-->)/2. Luckily the step from (-->)/2       > to phrase/3 is relatively small and this       > release features this predicate. Turns out it       > can be used for Strudel style music coding.       >       > Have Fun!       >       > Jan Burse, https://www.herbrand.ai/ , 24.11.2025              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca