Logic Programming Language

last modified: April 14, 2009

A logic programming language is a DeclarativeLanguage based on the application of PredicateLogic. PrologLanguage is the prime example.


There's also MercuryLanguage, OzLanguage... Lots of others, I'm sure. I think PrologLanguage is a really powerful tool for decision-making. I don't know if I'd ever want to write major applications in it, but having an InferenceEngine around is really slick.

There's also ConstraintProgramming ... http://brownbuffalo.sourceforge.net/ has some great examples for teaching constraint logic programming with finite domains using Eclipse, which seems to be a lot like prolog. Eclipse is a pain to download (you have to fax stuff), but I found I could follow the examples fairly easily using OzLanguage, another ConstraintProgramming language.

-- MichalWallace


Common Logic Controlled English (CLCE) http://www.jfsowa.com/clce/specs.htm is a language for logic in English-like syntax proposed by John F. Sowa. An implementation of the language in Scheme can be found at http://www.leidig-online.de/torsten/archives/2004-12.html#e2004-12-31T15_59_46.txt.

Logical statements read much like ordinary English and easier to understand as the following sample statements show:

Every person has some person as mother.
  ;
Every cat is on a mat.
  ;
Some person is between a dog and a blue cat.
  ;
If some person x is the mother of a person y,
    then y is a child of x.

-- TorstenLeidig


Is SETL a LogicProgrammingLanguage?

"The SETL programming language, almost as old as C, is closely modeled on set theory and looks like a version of Perl with a mathematical flavour. ... SETL (Set Language)"

-- "An Invitation to SETL" article by Roberto De Leo on Tue, 2004-12-28 -- http://www.linuxjournal.com/article/6805

The original version could be called a logic language, due to the backtracking feature (very similar to AmbSpecialForm.) No modern implementation has that feature, unfortunately.

-- FinnWilcox


See also:


Loading...