Re: [Haskell-cafe] Learn Prolog...

2007-09-06 Thread Lennart Augustsson
Because you can play very clever tricks with DFS to make it efficient, time and space. On 9/5/07, Stefan O'Rear [EMAIL PROTECTED] wrote: On Wed, Sep 05, 2007 at 01:21:52PM +1000, Thomas Conway wrote: but to interpret this as a *program* you have to consider how it will be executed. In

Re: [Haskell-cafe] Learn Prolog...

2007-09-04 Thread Thomas Conway
On 9/2/07, Andrew Coppin [EMAIL PROTECTED] wrote: One of standard exercices in Prolog is the construction of the meta-interpreter of Prolog in Prolog. While this is cheating, I recommend it to you. It opens eyes. Ever tried implementing Haskell in Haskell? ;-) In many respects, Haskell

Re: [Haskell-cafe] Learn Prolog...

2007-09-04 Thread Derek Elkins
On Wed, 2007-09-05 at 13:21 +1000, Thomas Conway wrote: On 9/2/07, Andrew Coppin [EMAIL PROTECTED] wrote: One of standard exercices in Prolog is the construction of the meta-interpreter of Prolog in Prolog. While this is cheating, I recommend it to you. It opens eyes. Ever tried

Re: [Haskell-cafe] Learn Prolog...

2007-09-04 Thread Stefan O'Rear
On Wed, Sep 05, 2007 at 01:21:52PM +1000, Thomas Conway wrote: but to interpret this as a *program* you have to consider how it will be executed. In particular, using SLD resolution, conjunction (/\, or ',' in Prolog notation) is not commutative as it is in predicate logic. I've always

Re: [Haskell-cafe] Learn Prolog...

2007-09-04 Thread Thomas Conway
On 9/5/07, Derek Elkins [EMAIL PROTECTED] wrote: That's because Prolog is -ugly-. The only reason I recommend it is because it's archetypical and there aren't any other logic languages with anywhere near the mindshare/significance. For a thing of sheer beauty, see, e.g. LolliMon. Oh, look,

Re: [Haskell-cafe] Learn Prolog...

2007-09-04 Thread Thomas Conway
On 9/5/07, Stefan O'Rear [EMAIL PROTECTED] wrote: I've always wondered why Prolog uses DFS, instead of some complete method like DFID or Eppstein's hybrid BFS... having to worry about clause order seems so out of place. Well, a couple of reasons are pretty well agreed in the Prolog community:

Re: [Haskell-cafe] Learn Prolog...

2007-09-03 Thread Andrew Cheadle
It's fairly correct and up-to-date although I note that the constraint example 'send more money' given is stated as 'Prolog' when it really uses ECLiPSe Prolog constraint syntax (alldifferent/1, labelling/1 and '#' integer constraints): If you're really interested in constraint based

Re: [Haskell-cafe] Learn Prolog...

2007-09-03 Thread ajb
G'day all. Quoting Bill Wood [EMAIL PROTECTED]: As to whether Prolog is dead or not, it depends on your definition of dead. Three years ago (not ten!) I made my living maintaining and developing a large application written in Prolog. Back when I was doing logic programming, 10 or so years

Re: [Haskell-cafe] Learn Prolog...

2007-09-03 Thread Bill Wood
On Mon, 2007-09-03 at 07:46 +0100, Andrew Cheadle wrote: . . . Incidentally, we've often seen a lot of traffic on here about Sudoku solvers and I've always wanted to post the ECLiPSe solution (neat when you consider the length of the sudoku/2 predicate ;-) : Reasonably quick, too -- 50

Re: [Haskell-cafe] Learn Prolog...

2007-09-03 Thread jerzy . karczmarczuk
Hugh Perkins writes: ... I didnt have a real PC, just a ZX Spectrum. It wasnt real Forth, just Spectrum Forth. It was kindof fun, but a little disappointing not to be able to do anything useful with it. ... Oh, Forth on Sinclair was as decent Forth as any Forth. Indirect threaded language,

Re: [Haskell-cafe] Learn Prolog...

2007-09-03 Thread Peter Verswyvelen
Off off off topic: The Z80 DID make it! It was used in many many game consoles (the best selling Nintendo Gameboy!) and arcade machines, mostly as a secondary sound synthesiser or IO controller. See http://en.wikipedia.org/wiki/Zilog_Z80. Even when only counting the Nintendo Gameboy, the CPU

Re: [Haskell-cafe] Learn Prolog...

2007-09-03 Thread Bill Wood
On Mon, 2007-09-03 at 02:49 -0400, [EMAIL PROTECTED] wrote: . . . I'm sure this isn't the case for you, but a typical Prolog programmer's idea of large is very different from a typical COBOL programmer's. Ever the diplomat? :-). Actually that is a fair observation. I don't think I ever

Re: [Haskell-cafe] Learn Prolog...

2007-09-03 Thread Tomasz Zielonka
On Mon, Sep 03, 2007 at 07:46:17AM +0100, Andrew Cheadle wrote: % ECLiPSe sample code - Sudoku problem % %This is a puzzle, originating from Japan I'm not sure about it. See the History section on http://en.wikipedia.org/wiki/Sudoku Apparently Japan was the place where Sudoku started

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Peter Verswyvelen
Peter Verswyvelen wrote: Thanks, this is very useful information! Prolog is indeed on my list as languages I want to learn. I understand the basic principles, but haven't digged deep yet. But first I want to do Haskell, which I'm now totally addicted to! But after reading

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Brandon S. Allbery KF8NH
On Sep 2, 2007, at 2:08 , Peter Verswyvelen wrote: But after reading http://en.wikipedia.org/wiki/ Fifth_generation_computer, it seemed to me that Prolog was a dead language, having only pure theoretical purposes. Is this true? Tell that to the order pricing system I wrote in Prolog for a

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Hugh Perkins
On 9/2/07, Brandon S. Allbery KF8NH [EMAIL PROTECTED] wrote: in the early 90s I think I found the flaw in your argument ;-) ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Andrew Coppin
One of standard exercices in Prolog is the construction of the meta-interpreter of Prolog in Prolog. While this is cheating, I recommend it to you. It opens eyes. Ever tried implementing Haskell in Haskell? ;-) Prolog strategies are straightforward, and I simply cannot understand the

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Neil Davies
Cut is a means of preventing backtracking beyond that point - it prunes the potential search space saying the answer must be built on the current set of bindings. (Lots of work went into how automatically get cut's into programs to make them efficient but without the programmer having to worry

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread jerzy . karczmarczuk
Andrew Coppin writes: Ever tried implementing Haskell in Haskell? ;-) Seriously: Haskell is a *complicated* language, needing a parser, which by itself is a non-trivial exercice. Moreover, it has a type-inference engine, which may be simulated, sure, but Haskell in Haskell is a tough job.

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Bill Wood
As to whether Prolog is dead or not, it depends on your definition of dead. Three years ago (not ten!) I made my living maintaining and developing a large application written in Prolog. That was actually an interesting experience, since one of the performance drivers was speed. As a result code

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Andrew Coppin
[EMAIL PROTECTED] wrote: Andrew Coppin writes: Ever tried implementing Haskell in Haskell? ;-) Seriously: Haskell is a *complicated* language, needing a parser, which by itself is a non-trivial exercice. It looks so simple on the surface... [Actually, so does cold fusion.] Read my whole

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Hugh Perkins
Sooo.. what is the modern equivalent of Prolog? ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread jerzy . karczmarczuk
Hugh Perkins writes: Sooo.. what is the modern equivalent of Prolog? Well, first, I wouldn't agree entirely that Prolog is not modern. Anyway... If you want something wih more bells and whistles, modularity, coroutining, more security (less power, e.g. no program auto-modification), etc.,

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Peter Verswyvelen
Jerzy Karczmarczuk wrote Perhaps somebody can say more about constraint languages which replaced Yes please! Of example, how correct is http://en.wikipedia.org/wiki/Constraint_programming? ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Derek Elkins
On Sun, 2007-09-02 at 22:52 +0800, Hugh Perkins wrote: Sooo.. what is the modern equivalent of Prolog? Because no one has said it quite this way: The modern equivalent of Prolog is Prolog. Most of the advancement in logic programming has either been folded back into Prolog or has been advanced

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Hugh Perkins
On 9/3/07, Derek Elkins [EMAIL PROTECTED] wrote: Because no one has said it quite this way: The modern equivalent of Prolog is Prolog. Ok, thanks. Just wanted to check that. (btw, just thought, when I was talking about FFI, probably meant Forth, not Prolog. FFI for Prolog probably isnt that

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Bill Wood
On Mon, 2007-09-03 at 07:43 +0800, Hugh Perkins wrote: On 9/3/07, Derek Elkins [EMAIL PROTECTED] wrote: Because no one has said it quite this way: The modern equivalent of Prolog is Prolog. I was just about to say the same thing :-); thanks, Derek. . . . (btw, just thought, when I was

Re: [Haskell-cafe] Learn Prolog...

2007-09-02 Thread Hugh Perkins
(BTW I thought the FFI for Forth was the Forth assembler; have things changed since FIG/F83?) I didnt have a real PC, just a ZX Spectrum. It wasnt real Forth, just Spectrum Forth. It was kindof fun, but a little disappointing not to be able to do anything useful with it. Well, I wanted to

[Haskell-cafe] Learn Prolog...

2007-09-01 Thread jerzy . karczmarczuk
Yes, I know, this is Haskell list. So, I apologize, but not too much... Johan Grönqvist cites me: Anyway, I believe strongly that ALL people who have problems... should be encouraged to learn Prolog. IN DEPTH, Do you have a recommendation on how to do this? (e.g., books, web-pages,

Re: [Haskell-cafe] Learn Prolog...

2007-09-01 Thread Hugh Perkins
Cool I had prolog for my Spectrum, many years ago (83?), but I stopped using it when I realized it didnt have any input/output capabilities beyond print, and no way to escape from the prolog bubble, eg FFI (not sure what FFI stands for, but I think it is a way for Haskell to escape into other