At the heart of LISP is recursion .Due to their regular, recursive structure, LISP programs tend to be short and elegant. A few simple rules presented in the next few sections will help the reader to think recursively and create better LISP programs. Gerald J. Sussman and Guy L. Steele Jr introduced scheme, another Functional language, in 1975 as the first dialect of Lisp to fully support lexical scoping, first-class procedures, and continuations. Scheme was one of the first programming languages to incorporate first class procedures as in the lambda calculus. Logic programming languages are much newer, having only been around for a little bit more than twenty years.
Logic based programming is declarative rather than procedural.
Specifications of desired results are programmed, not the process to obtain the results. Logic languages, e.g. Prolog, Mercury were mainly created to enhance the research and the development of artificial intelligence and managing database systems, and are being used in the Artificial Intelligence field because of their ability to use processes to determine the most correct result. It developed in 1971 at the University of Aix-Marseille by Alain Colmerauer and Phillipe Roussel. It was originally designed for natural language processing. The objective of the design of a functional programming language is to mimic mathematical functions to the greatest extent possible.