Lisp (List Processing Language) was invented in 1958 by
John McCarthy and was a pioneered functional programming with
- No need for variables or assignment
- Control via recursion and conditional expression
LISP origins are curious.
John McCarthy's wanted something like "Mathematical Physics" — he called it a "Mathematical Theory of Computation". He needed a very general kind of programming language to make a user interface AI that
he had thought up in the late 50s. So he needed a language that:
• Process data in lists (rather than arrays)
• Symbolic computation (rather than numeric)
• Syntax based on the lambda calculus
• S-expression
• No need for variables or assignment
• Control via recursion and conditional expressions
Ideas first introduced in Lisp included the
if/then/else construct, first-class functions, recursive function calls, dynamic typing, lexical closures, interactive programming, dynamic memory allocation, garbage collection and incremental compilation.