# Prolog

Prolog is a general-purpose logic programming language associated with artificial intelligence and computational linguistics.

### 4 Mentors

Our mentors are friendly, experienced Prolog developers who will help teach you new techniques and tricks.

### 1,562 Students

Join hundreds of students who have enjoyed learning and improving their skills by taking this track.

### 19 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

``````append([],    L,  L).
append([H|T], L2, [H|L3]) :- append(T, L2, L3).

?- appendx([1,2],[3,4],X).
X = [1, 2, 3, 4].

?- appendx([1,2],X,[1,2,3,4]).
X = [3, 4].

?- appendx(X,[3,4],[1,2,3,4]).
X = [1, 2].``````

Prolog (short for "Programming Logic") is a declarative and logic based programming language developed in 1972 by Alain Colmerauer and Philippe Roussel. It has many applications, most notably in Artificial Intelligence for its pattern matching abilities over natural language parse trees.

Prolog is written in "facts" and "rules" that define logical formulas, similar to functional programs. Learning Prolog is a great way to improve skills with recursion, predicate logic, and constraint logic programming.

## Exercism is a great website

What I like about it is that I am able to solve the challenges in a TDD way working in a environment that I am familiar (my own PC not a browser IDE) and the cherry on the top of the cake is that I have access to code reviews.

Relaxed. Encouraging. Supportive.

## Meet the Prolog Track mentors

Once you join the Prolog language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

### Tiago Antao Personal site

Did Prolog professionally a long time ago. Still think its the best language in the world!

### Yauheni Tsiarokhin

functional programming enthusiast

### Anne Ogborn https://github.com/AnnieAtDataChemist

Contributor to SWI-Prolog. Love Prolog and want to share the love.

### Lucas Polymeris https://github.com/Average-user

I'd like to make Prolog a better known programming language.
Fun. Challenging. Interesting

## Community-sourced Prolog exercises

These are a few of the 19 exercises on the Prolog track. You can see all the exercises here.

Space Age
easy
misc
Satellite
easy
binary trees
recursion
tree traversals
Complex Numbers
easy
math
Queen Attack
easy
misc
Pascal's Triangle
easy
math
RNA Transcription
easy
misc
Passionate. Knowledgeable. Creative.

## Meet the Prolog Track maintainers

The Prolog Maintainers are the brains behind the Prolog Track. They spend their spare time creating interesting and challenging exercises that we can all learn from. We are incredibly grateful for their hard work. Here are the bios of a few of the maintainers of this track.

Math Student.