My SWI-Prolog page

Perhaps it’s time that I announce “My SWI-Prolog page” here: .

The last month I’ve ported almost 200 of my Picat programs to SWI-Prolog, just to get a feeling for how SWI-Prolog works.

SWI-Prolog is a bit different from the previous Prologs/logic programming systems that I’ve tested/played with before (ECLiPSe CLP: , SICStus Prolog: , B-Prolog: , and Picat: http://hakank,org/picat/ ), since these all support some kind of explicit for loops and perhaps list comprehensions, which is not supported in SWI-Prolog. This has been (and still is) a bit of struggle for me, but I’ve found maplist which is a nice replacements in some cases.

Note that most of these programs are CLPFD programs (since this is what interests me most) and it surely shows my background with these other Prologs.

However, my main goal of this project is to use more of SWI-Prolog’s special and unique features. And since I now read The Art of Prolog (and plan to read Bratko’s AI for Prolog), I might do some GOFAI later as well…


I forgot to mention that the programs are collected at my GitHub page: .

12 posts were split to a new topic: Logical Loop

Hej Håkan,

Och välkommen till gruppen! Inte dåligt med (åtminstone) två svenskar här. :slight_smile: Jag har väl mest varit en passiv medlem fram till nyligen, men har sysslat med Prolog sedan 1987, fast med ca 7-8 års uppehåll då jag använde Oz/Mozart (som väl inte är allför olikt Picat?). Men sista 10 åren har det bara handlat om Prolog, och egentligen bara SWI-Prolog, eftersom jag är mycket intresserad av webben och webbteknologi. Nu försöker jag få gehör för språket Web Prolog, det sista jag gör innan jag går i pension.

And for the rest of you, let’s see how Google Translate handles it (I won’t correct anything!):

Hi Håkan,

And welcome to the group! Not bad with (at least) two Swedes here. :slight_smile: I have mostly been a passive member until recently, but I have been working with Prolog since 1987, though with about 7-8 years break when I used Oz / Mozart (which is not too different from Picat?). But the last 10 years have only been about Prolog, and really only SWI-Prolog, because I’m very interested in the web and web technology. Now I try to get a hearing for the language Web Prolog, the last thing I do before I retire.

(Well, not bad, and good enough to be understandable. But I promise to stick to English in this group for the rest of my life.)



(First in Swedish, later a Google translation.)

Hej Torbjörn.

Tack för ditt välkommen!

Jag känner faktiskt till dig sedan rätt länge, men är lite osäker på exakt hur och när. Helt klart Prolog-relaterat (kanske comp.lang.prolog?),

Vad gäller Oz/Mozart så kollade jag in det för typ 10 år sedan och det - speciellt dokumentationen och exemplen - var en av orsakerna till att jag blev intresserad av Constraint Programming, men fastnade för andra Constraint Programming system såsom MiniZinc, Gecode, Prolog och Picat (och ett gäng andra system). Det finns en del likheter mellan Oz/Mozart och Picat, men Oz/Mozart gör saker annorlunda (rätt elegant men annorlunda).

Jag har föjlt den långa tråden om Web Prolog här (Ann: Paper about Web Prolog ), och det är helt klart intressant. Även om jag arbetat i mer än 20 år web-branchen (iofs som backenutvecklare), vill jag lära mig mer i om “traditionell” (SWI-) Prolog innan jag börjar med Web Prolog.

And here’s the Google translation

Hi Torbjörn.

Thank you for your welcome!

I have actually known you for quite some time, but am a little uncertain exactly how and when. Clearly Prolog related (maybe comp.lang.prolog?).

As for Oz / Mozart, I checked it out about 10 years ago and that - especially the documentation and examples - was one of the reasons why I became interested in Constraint Programming, but stuck to other Constraint Programming systems such as MiniZinc, Gecode, Prolog and Picat (and a bunch of other systems). There are some similarities between Oz / Mozart and Picat, but Oz / Mozart does things differently (quite elegant but different).

I have followed the long thread about Web Prolog here (Ann: Paper about Web Prolog), and it is clearly interesting. Although I have worked in the web industry for more than 20 years (iofs as a hill developer), I want to learn more about “traditional” (SWI) Prolog before I start with Web Prolog.

[Note: “hill developer” is Google’s version of “backend developer”. :slight_smile: ]

1 Like

Hej på er :slight_smile:
Forskare vid Lunds Universitet här; har mycket nytta av Pengines och CLP i mitt projekt om kunskapsrepresentation!

Hello :slight_smile:
Researcher at Lund University here; I find Pengines and CLP very useful in my project on knowledge representation!


SICStus Prolog apostates?

Hej @JCR

Ännu en svensk här. Kul! Vill du avslöja lite mer vad du forskar kring? (Du är JCR på StackOverflow, eller hur?)

/Håkan (som råkar bo i Malmö)


Another Swede here. Great! Do you want to reveal a little more on your researching? (You’re JCR on StackOverflow, right?)

/Håkan (who happens to live in Malmö, not very far from Lund)

1 Like

Hej Håkan :slight_smile: So we live really close; funny! I’ll send you a PM (I am writing an article right now about the project so I want to wait until it’s finished before spreading the word).


Great. I’m looking forward to talk to you!


1 Like

Hey Hakank!

Sweden’s becoming a Prolog hot spot. Samuel Lempa’s in Sweden as well.


Hi @anniepoo.


Don’t forget the SICStus Prolog gang: Mats Carlsson, Per Mildner & Co.



Oooh yes. For some reason I tend to not think abotu other prologs :innocent::innocent:

1 Like