Mercury: Mercury is a new logic/functional programming language, which combines
the clarity and expressiveness of declarative programming with advanced static
analysis and error detection features. Its highly optimized execution algorithm
delivers efficiency far in excess of existing logic programming systems, and
close to conventional programming systems. Mercury addresses the problems of
large-scale program development, allowing modularity, separate compilation, and
numerous optimization/time trade-offs. Last modification on October 6 2000.
Lambda-Prolog: Prolog is a logic programming language, where almost all computation
emerges from a generalized form of pattern matching called unification. Like a
mathematical proof, a Prolog program is composed of declarations (axioms) and
goals (theorems to prove). We will show how these correspond to functions and
expressions in functional programming languages. Last modification on January 12 1999.
OZ: a concurrent constraint programming language and its interactive
implementation. Last modification on September 12 2000.
Life: Life stands for Logic, Inheritance, Functions, and Equations. It
integrates the defining characteristics of the three styles we have seen:
Object-oriented: Mutable collections of named slots, belonging to classes
arranged in an inheritance hierarchy. Functional: Declarative/pattern matching
syntax, with currying and non-strictness. Logical: Unification and
backtracking. Last modification on October 28 1998.
Gödel: Gödel is a declarative, general-purpose programming language in the
family of logic programming languages. It is a strongly typed language, the
type system being based on many-sorted logic with parametric polymorphism. It
has a module system. Gödel supports infinite precision integers, infinite
precision rationals, and also floating-point numbers. It can solve constraints
over finite domains of integers and also linear rational constraints. It
supports processing of finite sets. It also has a flexible computation rule and
a pruning operator which generalizes the commit of the concurrent logic
programming languages. Considerable emphasis is placed on Gödel's meta-logical
facilities which provide significant support for meta-programs that do
analysis, transformation, compilation, verification, debugging, and so on. Last modification on April 2 1997.
``For half a year I ran IIS on our main web server in support of my
statement: "If our customer are using IIS and having trouble, we should
feel their pain." The pain got unbearable. I bailed and converted www.digicool.com to Linux.''
Paul Everitt.