ALGUMAS LINGUAGENS LÓGICAS PROLOGO Prolog é uma linguagem declarativa, significando que em vez de o programa estipular a maneira de chegar à solução, passo a passo, (como nas linguagens procedimentais ou imperativas), limita-se a fornecer uma descrição do problema que se pretende computar. Usa uma coleção base de dados de fatos e de relações lógicas (regras) que exprimem o domínio relacional do problema a resolver.
Um programa pode rodar num modo interativo, a partir de consultas (queries) formuladas pelo usuário, usando a base de dados (os 'fatos') e as regras relacionais (essencialmente implicações lógicas: se.. então), e o mecanismo de unificação para produzir (por uma cadeia de deduções lógicas) a solução.
O Prolog é baseado num subconjunto do cálculo de predicados de primeira ordem, o que é definido por cláusulas de Horn. A execução de um programa em Prolog é efetivamente a prova de um teorema por resolução de primeira ordem. Alguns conceitos fundamentais são unificação, recursão. e backtracking.
MERCURY Mercury é uma nova linguagem de programação lógica/funcional puramente declarativa. Uma característica interessante dessa linguagem é a detecção de erros. Uma alta porcentagem de erros é detectada em tempo de compilação. Uma "suposta" vantagem (suposta pois não tivemos a oportunidade de comprová-la) é que suas implementações não são mais lentas do que outras escritas em linguagens estruturadas, o que costuma ocorrer com outras linguagens de programação lógica.
SPARCLSPARCL é uma linguagem de programação lógica desenvolvida com o objetivo de integrar programação lógica, programação visual e programação modularizada. A implementação, que roda em Macintosh (versão 7.1 ou superior) é uma versão acadêmica, implementada apenas para demonstrar as possibilidades de uma linguagem de programação lógica com tais características.