Skip to content

Lisp — Complete Guide

In this tutorial, you will learn about Lisp. We cover key concepts, practical examples, and best practices to help you master this topic.

Lisp (LISt Processing) is the second-oldest high-level programming language, designed by John McCarthy in 1958. Master symbolic computation with hands-on tutorials.

1. What Is Lisp?
Origins, philosophy, and dialects
2. S-Expressions
Prefix notation and symbolic expressions
3. Atoms and Lists
Fundamental data types
4. Car, Cdr, and Cons
Building and destructuring lists
5. Define, Let, and Lambda
Variables, scope, and anonymous functions
6. Recursion
Recursive functions replacing loops
7. Conditionals
If, cond, when, and case
8. Higher-Order Functions
Map, filter, reduce, and closures
9. Common Lisp vs Scheme
Key dialect differences
10. Macros
Code that writes code
11. CLOS — Object System
Generic functions, classes, and methods
12. Input and Output
Reading, printing, and file I/O
13. Packages and Modules
Namespaces and code organization
14. Quicklisp and Libraries
Package manager and ecosystem
15. Real-World Projects
Build tools, DSLs, and utilities

Published Topics

What Is Lisp?

Lisp is the second-oldest high-level programming language, introducing recursion, garbage collection, and first-class functions.

✓ Live

S-Expressions — Complete Guide

S-expressions are Lisp's uniform syntax where code and data share the same structure of atoms and parenthesized lists.

✓ Live

Atoms and Lists — Complete Guide

Lisp atoms are primitive values (numbers, symbols, strings) and lists are ordered collections of S-expressions.

✓ Live

Car, Cdr, and Cons — Complete Guide

car returns the first element, cdr returns the rest, and cons constructs new lists by prepending elements.

✓ Live

Define, Let, and Lambda — Complete Guide

defun defines functions, let creates local bindings, and lambda creates anonymous functions.

✓ Live

Recursion — Complete Guide

Lisp uses recursion where other languages use loops, with tail-call optimization for efficient execution.

✓ Live

Conditionals — Complete Guide

Learn Conditionals. Step-by-step tutorial with practical examples.

✓ Live

Higher-Order Functions — Complete Guide

Higher-order functions like mapcar, remove-if-not, and reduce operate on lists with function arguments.

✓ Live

Common Lisp vs Scheme — Complete Guide

Common Lisp (Lisp-2) separates function and variable namespaces; Scheme (Lisp-1) uses a single namespace.

✓ Live

Macros — Complete Guide

Lisp macros transform code at compile time, enabling users to extend the language syntax itself.

✓ Live

CLOS -- The Object System

CLOS provides generic functions, multiple inheritance, method combination, and the Metaobject Protocol.

✓ Live

Input and Output — Complete Guide

Lisp I/O includes format for output, read for input, and file operations with open/close and with-open-file.

✓ Live

Packages and Modules — Complete Guide

Lisp packages provide namespaces for symbols, preventing name collisions across large codebases.

✓ Live

Quicklisp and Libraries — Complete Guide

Quicklisp is Lisp's package manager, installing libraries from a central repository with dependency resolution.

✓ Live

Real-World Projects — Complete Guide

Build DSLs, configuration systems, and utilities using Lisp's macro system and interactive development.

✓ Live

All 15 topics in Lisp — Complete Guide are published.