Lisp (programming language)

Edit · View history

Introduction

Lisp (historically stylized as LISP) is a family of programming languages with a long history and a distinctive, fully parenthesized prefix notation. Originally specified in 1958 by John McCarthy, Lisp is the second-oldest high-level programming language after Fortran. It pioneered many ideas in computer science, including recursive functions, dynamic typing, and automatic memory management via garbage collection. Lisp dialects are still widely used in artificial intelligence research, education, and for scripting in editors like Emacs.

History

The first Lisp implementation was created in 1958 at the Massachusetts Institute of Technology (MIT) by John McCarthy as a theoretical tool for symbolic computation. The language was built upon the lambda calculus and introduced the concept of S-expressions (symbolic expressions) for representing both code and data. Throughout the 1960s and 1970s, numerous dialects emerged, including MacLisp, Interlisp, and Scheme (1975). In the 1980s, the Common Lisp effort standardized the language, producing ANSI Common Lisp in 1994. Lisp was the primary language for early artificial intelligence research, notably for projects like the Lisp machine and the Expert system paradigm.

Features

Influence

Lisp's ideas have profoundly influenced many subsequent languages, including Python, Ruby, Julia, and JavaScript. The concept of garbage collection, functional programming constructs, and interactive development environments all trace back to Lisp. Modern dialects such as Clojure run on the Java Virtual Machine and the Common Language Runtime, while Scheme remains a teaching language in many computer science curricula.