# logic programming language

> programming language that implements logic programming paradigm

**Wikidata**: [Q28920209](https://www.wikidata.org/wiki/Q28920209)  
**Source**: https://4ort.xyz/entity/logic-programming-language

## Summary
A logic programming language is a type of computer programming language that implements the logic programming paradigm. These languages are designed to communicate instructions to a machine based on formal logic. They are a specific manifestation of the logic programming concept.

## Key Facts
- **Primary Paradigm:** Implements the logic programming paradigm.
- **Classification:** It is a subclass of programming language, deductive language, and constraint logic programming language.
- **Manifestation Of:** Logic programming.
- **Notable Example (Prolog):** The related language Prolog was created in 1972 and uses first-order logic.
- **Notable Example (Curry):** The related language Curry was created in 1995.
- **Notable Example (ObjVProlog):** The related language ObjVProlog was created in 1989.
- **Related Languages:** Other examples include Logica, Fril, and KL0.

## FAQs
### Q: What is a logic programming language?
A: It is a programming language specifically designed to implement the logic programming paradigm. It uses formal logic to express computations and communicate instructions to a computer.

### Q: What are some examples of logic programming languages?
A: Well-known examples include Prolog (created in 1972), Curry (1995), and ObjVProlog (1989). Other related languages are Logica, Fril, and KL0.

### Q: What programming paradigm do these languages follow?
A: These languages are a manifestation of the logic programming paradigm, which is their defining characteristic.

## Why It Matters
The concept of a logic programming language is significant because it represents a distinct approach to computation, differing from more common imperative or object-oriented paradigms. By classifying a group of languages under this single umbrella, it provides a clear framework for understanding tools based on formal logic. This category is important for computer science as it groups together influential languages like Prolog, which have been foundational in fields such as artificial intelligence, computational linguistics, and expert systems. The existence of this class helps define the relationship between abstract concepts like "logic programming" and their concrete implementations, such as Prolog, Curry, and others. It also situates these languages within the broader family of programming languages, identifying them as a specific type of deductive and constraint logic language.

## Notable For
- **Paradigm Implementation:** Its defining feature is being a concrete manifestation of the logic programming paradigm.
- **Hierarchical Classification:** It is formally classified as a subclass of several broader categories, including programming language, deductive language, and constraint logic programming language.
- **Foundational Examples:** This class includes Prolog, a historically significant language created in 1972 that is based on first-order logic.
- **Specific Lineage:** It serves as a parent category for languages with a clear heritage, such as KL0, which is a sequential logic programming language based on Prolog.

## Body
### ### Definition and Paradigm
A logic programming language is defined as a programming language that implements the logic programming paradigm. It is a direct manifestation of the principles of logic programming, using formal logic as its basis for computation.

### ### Classification and Relationships
In the hierarchy of computer languages, a logic programming language is a specialized type of programming language. It is considered a subclass of both deductive languages and constraint logic programming languages.

### ### Examples
Several programming languages fall under this category:
*   **Prolog:** A general-purpose language created in 1972 that is based on first-order logic.
*   **Curry:** A programming language with an inception date of 1995.
*   **ObjVProlog:** Created in 1989.
*   **KL0:** A sequential logic programming language that is based on Prolog.
*   **Logica:** A logical programming language.
*   **Fril:** A programming language.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "logic programming language",
  "description": "A programming language that implements the logic programming paradigm.",
  "additionalType": "programming language"
}