Lisp and Prolog has the capabilities to process symbolic information (e.g. non constant – information). Therefore, they are capable of expressing all computations that can be defined in the computation theory, the most essential part of computer science. It was Alonzo Church, who first showed (1935) the principles of symbolic logic in evaluating mathematic formulas using Lambda-calculus using a formal notation. Alan Turing showed the same thing in his report On Computable Numbers. These two fellows formed the formalism for computers before the 2nd world war.

Prolog comes from the paradigm of logic programming. Instead Lisp is a member of functional programming languages.

In summary, Lisp and Prolog are programming tools for expressing and evaluating all computations that can be computed in general. They are much richer than traditional non-symbolic languages, because the latter ones cannot express other than constant information as a built-in functionality. For non-symbolic languages all variables should be ground using a value (init value or an assignment), before they can be used in the program.

Advertisements