Prolog (PROgramming LOGic) is the predominant logic programming language. It is based on first-order predicate calculus, but is restricted to using horn clauses.
grandfather(X,Z) <= parents(X, Y), parents(Y, Z).
A trippy 70's computer programming language that uses recursion like a motherfucker. It is a logical programming language designed for expressing human logic instead of specific machine instructions. Unlike procedural languages such as C, it has very little practical use outside of a university environment.
Uni student #1: Holy shit. Recursively manipulating lists in Prolog is totally screwing with my head! Btw, why the fuck is my program stuck in a loop?
Uni student #2: You've got to create a base case for your predicate. Otherwise it just backtracks up the list and down again.
Uni student #1: Thanks. Fuck. I don't know if I'm gonna pass this course.
Uni student #2: Don't worry. It's not as if this shit is useful anyway.