| Dirk Mittler 2005-08-30, 6:58 pm |
|
"Bart Demoen" <bmd@cs.kuleuven.ac.be> wrote in message
news:1125348941.899100@seven.kulnet.kuleuven.ac.be...
> A.L. wrote:
>
>
> True. A first step to providing SWI with constraint solvers, was
> taken by Jan Wielemaker when he implemented attributed variables
> (first quarter of 2004 if I remember correctly).
> Then Tom Schrijvers provided a CHR implementation - generic in the sense
> that it allows anyone to write his/her own constraint solvers with
> their favourite propagation/completeness/domain/etc.
> Tom also wrote a finite domain solver (named bounds in SWI) but mostly
> as a proof that it can be done in SWI - not pretending to be something
> super duper efficient.
> Leslie De Koninck has done CLP(R) for SWI, with non-linear constraints -
> soon, if not already available ! The non-linear stuff is probably
> unique amongst truly free/open systems (not just Prolog systems).
> There is work behind the scenes on more efficient execution of CHR, by
> (amongst others) Jon Sneyers: it is less visible and less spectacular,
> but SWI will directly benefit from his efforts.
> And a bit preliminary, but also in the pipeline, is an FD solver by
> Markus Triska [Markus, sorry if this puts pressure on you :-] also
> intended to go into the SWI distribution; and probably superceding the
> bounds.pl by Tom, because more efficient.
>
> I have obviously only named the people I know, and there may be others
> who make it part of their life to improve some aspects of SWI.
> It takes a big effort to write efficient solvers and SWI can use all
> the help it can get. What Jan manages on his own (providing the
> infrastructure for solvers and a zillion other useful things related to
> the web, multi-threading, wide-chars and things that are beyond my
> comprehension) is gigantic, and hopefully others will make good use of
> it by providing tools and applications.
> Donations are necessary and not frowned upon either.
>
> Cheers
>
> Bart Demoen
When I first posted to this newsgroup, my assumption was that CLP was
implemented in a very similar way from one Prolog compiler to the next. But
I've learned that there are considerable implementation differences. This is
also why I posted about attributed variables and CHR initially, which many
readers might not have recognized.
I also installed Cygwin on my computer some time ago, just so that I could
install XSB Prolog. But unfortunately, I never used that, and so I also did
not see the major differences just now. I did hear that XSB uses an
incremental (=learning) database as its core. But in some way I lost sight
of this knowledge when I posted here.
Dirk
|