
Has anyone already tried to embed prolog-style logic programming as a Haskell library? Kind of like Schelog but for Haskell? I know about Curry, but I'd like a Haskell library rather than another language. Stefan

* Shameless biased plug * ;-) Why do logic programming in Haskell when you can use ECLiPSe: www.icparc.ic.ac.uk/eclipse No seriously, I use both and I love using both, but I have the right tool for the right job mentality... The backtracking monad gets you so far but why do your own trailing when a WAM-based architecture takes the strain and the pain and does it more efficiently? Just my two pennies ;-) Andy On Thu, 19 Aug 2004, Stefan Monnier wrote:
Has anyone already tried to embed prolog-style logic programming as a Haskell library? Kind of like Schelog but for Haskell?
I know about Curry, but I'd like a Haskell library rather than another language.
Stefan
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
********************************************************************* * Andrew Cheadle email: a.cheadle@doc.ic.ac.uk * * Department of Computing http://www.doc.ic.ac.uk/~amc4/ * * Imperial College * * University of London * *********************************************************************

Stefan Monnier
Has anyone already tried to embed prolog-style logic programming as a Haskell library? Kind of like Schelog but for Haskell?
See Proceedings of the 1999 Haskell Workshop (http://archive.cs.uu.nl/pub/RUU/CS/techreps/CS-1999/1999-28.pdf) and the paper Embedding Prolog in Haskell by Seres and Spivey. There's also a paper by the same authors at ICLP that year. -- Bjarte M. Østvold Email: bjarte@nr.no Norwegian Computing Center Phone: +47 22 85 26 22 PO Box 114 Blindern, http://www.nr.no/~bjarte/ NO-0314 Oslo, Norway

G'day all.
Quoting Stefan Monnier
Has anyone already tried to embed prolog-style logic programming as a Haskell library? Kind of like Schelog but for Haskell?
If you don't actually need free logic variables, you could try this: http://cvs.sourceforge.net/viewcvs.py/hfl/hfl/mtl/ The Logic monad (and monad transformer) provides backtracing with "all solutions", negation-as-failure, logical if-then-else with soft cut and a committed choice pruning operation. Cheers, Andrew Bromage
participants (4)
-
ajb@spamcop.net
-
Andrew Cheadle
-
Bjarte M. Oestvold
-
Stefan Monnier