
On Tue, 8 Jul 2008 16:59:00 +1000, "David Overton"
On 08/07/2008, Benjamin L. Russell
wrote: If you are interested in logic programming in a language with some similarity to Haskell, you might also wish to investigate the strongly typed logic programming language Godel (see http://www.cs.bris.ac.uk/~bowers/goedel.html). When I first saw an example of the code, I was surprised that, unlike Prolog, the language was strongly typed, and supported modules, and (albeit very loosely) resembled Haskell, except that it was a logic programming language.
While we're plugging logic programming languages, you might also be interested in Mercury (http://www.cs.mu.oz.au/research/mercury/). This is a logic/functional language with Prolog-like syntax, but with a Haskell-like type system, including Hindley-Milner types and type classes. IMHO Mercury is even closer to Haskell than Goedel.
Yes, Mercury appears interesting, but I was also wondering whether there were any logic programming languages with strong typing and modules that have GUI-based REPL's, similar to WinHugs, available. For example, both SWI-Prolog and GNU Prolog have GUI-based REPL's of that type, but Mercury, at least from what I read in the on-line documentation, does not appear to have one. Go"del has SAGE (Self Applicable Go"del Evaluator) (download goedel-sage.tar.Z (200KB) at ftp://ftp.cs.bris.ac.uk/pub/goedel/latest/goedel-sage.tar.Z), but Go"del is not available for Windows, and according to the home page, there are no plans for this to change in the future. The advantage of a GUI-based REPL is that it facilitates learning the language for beginners and non-*NIX/Linux users, and, in some cases, using the language in a non-*NIX/Linux environment. For example, although I can use Mac OS X at home, my work computer, on which I study programming during lunch and after work, uses Windows XP Professional. It is clumsy switching to Cygwin and Emacs in a Windows environment, because I cannot use UNIX-style tools in the same way outside of Cygwin in Windows as in UNIX. In addition, many directories have spaces in their paths, and many UNIX tools do not support spaces in paths to files. In this environment, a GUI-based REPL would be convenient. Do you know of any logic programming languages with strong typing and modules that have GUI-based REPL's, similar to WinHugs, available? -- Benjamin L. Russell
Also, see my recent attempts at (constraint) logic programming in Haskell: http://overtond.blogspot.com/2008/07/pre.html http://overtond.blogspot.com/2008/07/haskell-sudoku-solver-using-finite.html
David