Common Lisp
Common Lisp is a general-purpose, multi-paradigm dialect of Lisp standardized in the 1980s, notable for its powerful macro system, dynamic development style, and support for both functional and object-oriented programming.
Definition
Common Lisp is a general-purpose, multi-paradigm dialect of Lisp standardized in the 1980s, notable for its powerful macro system, dynamic development style, and support for both functional and object-oriented programming.
Overview
Common Lisp emerged as an effort to unify the many diverging Lisp dialects of the 1970s and early 1980s into a single standardized language, resulting in ANSI Common Lisp — a large, feature-rich specification that includes a sophisticated macro system, the Common Lisp Object System (CLOS) for object-oriented programming, condition-based error handling, and native support for numeric types beyond typical fixed-precision integers. Unlike the minimalist design of its sibling dialect Scheme, Common Lisp deliberately included a broad standard library and many convenience features aimed at production software development. One of Common Lisp's most distinctive traits is its macro system, which operates on code represented as data (homoiconicity), letting developers extend the language itself with new syntactic constructs — a capability few mainstream languages offer as directly. This, combined with an interactive REPL-driven development style, made Common Lisp historically popular for exploratory programming, symbolic AI research, and complex systems where the ability to redefine and extend the running program was valuable. Common Lisp saw significant industrial use in AI research through the 1980s, including in specialized Lisp machines built to run it efficiently, and it remains actively used today in niche but committed communities for symbolic computation, rapid prototyping, and systems that benefit from its macro-driven extensibility, even though it never achieved the mainstream adoption of later dynamic languages like Python. It is often mentioned alongside Prolog in this space.
Key Features
- Powerful macro system for extending the language itself
- Common Lisp Object System (CLOS) for object-oriented programming
- Interactive, REPL-driven development workflow
- Homoiconic syntax: code is represented as data
- Condition system for flexible, resumable error handling
- Large standardized feature set (ANSI Common Lisp)
Use Cases
Frequently Asked Questions
From the Blog
Big-O Notation Explained: Time & Space Complexity
Understand Big-O notation, time and space complexity, and the common growth rates with clear worked examples so you can reason about performance and ace interviews.
Read More ProgrammingJavaScript Closures Explained With Examples
Learn what JavaScript closures are, how they capture variables from an outer scope, and see practical examples covering counters, data privacy, and common pitfalls.
Read More ProgrammingRegular Expressions Explained for Beginners
Regular expressions are compact patterns that search, match, and transform text. Learn the core syntax, common recipes, and how to avoid the classic beginner traps.
Read More Cloud & CybersecurityOWASP Top 10: The Most Common Web Vulnerabilities
A clear developer's guide to the OWASP Top 10 web vulnerabilities: what each risk means, why it happens, and the practical defenses that reliably prevent it.
Read More