This programming language may be used to instruct a computer to perform a task.
Execution method: | Compiled (machine code) |
---|---|
Garbage collected: | Yes |
Type safety: | Safe |
Type strength: | Strong |
Type checking: | Dynamic, Static |
See Also: |
If you know Common Lisp, please write code for some of the tasks not implemented in Common Lisp.
Common Lisp, commonly abbreviated CL, is a dialect of the Lisp programming language, standardised by ANSI X3.226-1994. Developed as a common successor to Maclisp and Lisp Machine Lisp, it is not an implementation but a language specification.
Several implementations of the Common Lisp standard are available, including commercial products and open source software: Steel Bank Common Lisp (SBCL), forked from the earlier CMU Common Lisp (CMUCL), is the most actively maintained open source implementation. CLISP was also a common choice in the past and is used by some Lisp books such as Land of Lisp (2010) for their code examples, but as of 2022 development has slowed to a crawl. LispWorks is the commonly used commercial alternative to SBCL and offers advanced GUI options, but is quite expensive and may not be worth it if a developer mainly wants to program non-GUI applications.
Common Lisp is a general-purpose programming language, in contrast to Lisp variants such as Emacs Lisp and AutoLISP which are embedded extension languages in particular products. Unlike many earlier Lisps, Common Lisp (like Scheme) uses lexical variable scope.
A "*" (SBCL), ">" (CLISP), or "CL-USER> " prompt seen in front of some examples shows that the code was run in a Lisp read-eval-print loop, or REPL, running interactively in an environment such as SLIME.
Citations[edit]
Subcategories
This category has the following 3 subcategories, out of 3 total.
Pages in category "Common Lisp"
The following 754 pages are in this category, out of 754 total.
A
- A* search algorithm
- A+B
- Abbreviations, automatic
- ABC problem
- Abstract type
- Abundant odd numbers
- Abundant, deficient and perfect number classifications
- Accumulator factory
- Ackermann function
- Active object
- Add a variable to a class instance at runtime
- Additive primes
- Address of a variable
- AKS test for primes
- Align columns
- Aliquot sequence classifications
- Almkvist-Giullera formula for pi
- Almost prime
- Amb
- Amicable pairs
- Anagrams
- Anagrams/Deranged anagrams
- Angle difference between two bearings
- Angles (geometric), normalization and conversion
- Animate a pendulum
- Animation
- Anonymous recursion
- Anti-primes
- Append a record to the end of a text file
- Apply a callback to an array
- Apply a digital filter (direct form II transposed)
- Approximate equality
- Arbitrary-precision integers (included)
- Archimedean spiral
- Arithmetic evaluation
- Arithmetic-geometric mean
- Arithmetic-geometric mean/Calculate Pi
- Arithmetic/Complex
- Arithmetic/Integer
- Arithmetic/Rational
- Array concatenation
- Array length
- Arrays
- Aspect oriented programming
- Assertions
- Associative array/Creation
- Associative array/Iteration
- Associative array/Merging
- Atomic updates
- Attractive numbers
- Averages/Arithmetic mean
- Averages/Mean angle
- Averages/Mean time of day
- Averages/Median
- Averages/Mode
- Averages/Pythagorean means
- Averages/Root mean square
- Averages/Simple moving average
- AVL tree
B
- Babbage problem
- Balanced brackets
- Balanced ternary
- Barnsley fern
- Base64 decode data
- Base64 encode data
- Bell numbers
- Benford's law
- Bernoulli numbers
- Best shuffle
- Binary digits
- Binary search
- Binary strings
- Bioinformatics/Sequence mutation
- Biorhythms
- Bitcoin/public point to address
- Bitmap
- Bitmap/Bresenham's line algorithm
- Bitmap/Histogram
- Bitmap/Midpoint circle algorithm
- Bitmap/Read a PPM file
- Bitmap/Write a PPM file
- Bitwise IO
- Bitwise operations
- Boolean values
- Brace expansion
- Break OO privacy
- Brownian tree
- Bulls and cows
- Bulls and cows/Player
C
- Caesar cipher
- Calculating the value of e
- Calendar
- Calendar - for "REAL" programmers
- Call a foreign-language function
- Call a function
- Call a function in a shared library
- Call an object method
- Cartesian product of two or more lists
- Case-sensitivity of identifiers
- Casting out nines
- Catalan numbers
- Catalan numbers/Pascal's triangle
- Catamorphism
- Chaos game
- Character codes
- Chat server
- Check input device is a terminal
- Check output device is a terminal
- Check that file exists
- Cheryl's birthday
- Chinese remainder theorem
- Chinese zodiac
- Cholesky decomposition
- Classes
- Closest-pair problem
- Closures/Value capture
- Collections
- Color of a screen pixel
- Color quantization
- Colour bars/Display
- Colour pinstripe/Display
- Combinations
- Combinations and permutations
- Combinations with repetitions
- Comma quibbling
- Command-line arguments
- Comments
- Compare a list of strings
- Compile-time calculation
- Compiler/lexical analyzer
- Compiler/syntax analyzer
- Compiler/virtual machine interpreter
- Compound data type
- Concurrent computing
- Conditional structures
- Conjugate transpose
- Constrained genericity
- Constrained random points on a circle
- Continued fraction
- Continued fraction/Arithmetic/Construct from rational number
- Convert decimal number to rational
- Convert seconds to compound duration
- Convex hull
- Conway's Game of Life
- Copy a string
- Copy stdin to stdout
- Count how many vowels and consonants occur in a string
- Count in factors
- Count in octal
- Count occurrences of a substring
- Count the coins
- Cramer's rule
- CRC-32
- Create a file
- Create a two-dimensional array at runtime
- Create an HTML table
- CSV data manipulation
- CSV to HTML translation
- Cuban primes
- Cumulative standard deviation
- Currying
- CUSIP
- Cut a rectangle
D
- Date format
- Day of the week
- Deal cards for FreeCell
- Deconvolution/1D
- Deepcopy
- Define a primitive data type
- Delegates
- Delete a file
- Detect division by zero
- Determinant and permanent
- Determine if a string has all the same characters
- Determine if a string has all unique characters
- Determine if a string is numeric
- Digital root
- Digital root/Multiplicative digital root
- Dijkstra's algorithm
- Dinesman's multiple-dwelling problem
- Dining philosophers
- DNS query
- Documentation
- Dot product
- Doubly-linked list/Definition
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Dragon curve
- Draw a sphere
- Dynamic variable names
E
- Echo server
- Egyptian division
- Egyptian fractions
- Element-wise operations
- Elementary cellular automaton
- Emirp primes
- Empty directory
- Empty program
- Empty string
- Entropy
- Enumerations
- Environment variables
- Equilibrium index
- Ethiopian multiplication
- Euler method
- Euler's identity
- Euler's sum of powers conjecture
- Evaluate binomial coefficients
- Even or odd
- Evolutionary algorithm
- Exceptions
- Exceptions/Catch an exception thrown in a nested call
- Execute a Markov algorithm
- Execute a system command
- Execute Brain****
- Execute HQ9+
- Exponentiation operator
- Exponentiation order
- Extend your language
- Extract file extension
F
- Factorial
- Factorions
- Factors of a Mersenne number
- Factors of an integer
- Farey sequence
- Fast Fourier transform
- FASTA format
- Fermat numbers
- Fibonacci n-step number sequences
- Fibonacci sequence
- Fibonacci word
- File input/output
- File modification time
- File size
- Filter
- Find common directory path
- Find if a point is within a triangle
- Find limit of recursion
- Find palindromic numbers in both binary and ternary bases
- Find the intersection of two lines
- Find the last Sunday of each month
- Find the missing permutation
- Find words which contains all the vowels
- First-class functions
- First-class functions/Use numbers analogously
- Five weekends
- FizzBuzz
- Flatten a list
- Floyd's triangle
- Floyd-Warshall algorithm
- Forest fire
- Fork
- Formal power series
- Formatted numeric output
- Forward difference
- Four bit adder
- Four is magic
- Fractal tree
- Fractran
- FTP
- Function composition
- Function definition
- Function frequency
- Function prototype
G
- Gamma function
- Gapful numbers
- Gaussian elimination
- General FizzBuzz
- Generate Chess960 starting position
- Generate lower case ASCII alphabet
- Generator/Exponential
- Generic swap
- Get system command output
- Globally replace text in several files
- Gray code
- Grayscale image
- Greatest common divisor
- Greatest element of a list
- Greatest subsequential sum
- Guess the number
- Guess the number/With feedback
- Guess the number/With feedback (player)
- GUI component interaction
H
- Hailstone sequence
- Hamming numbers
- Handle a signal
- Happy numbers
- Harshad or Niven series
- Hash from two arrays
- Hash join
- Haversine formula
- Hello world/Graphical
- Hello world/Line printer
- Hello world/Newbie
- Hello world/Newline omission
- Hello world/Standard error
- Hello world/Text
- Hello world/Web server
- Here document
- Higher-order functions
- History variables
- Hofstadter Figure-Figure sequences
- Hofstadter Q sequence
- Hofstadter-Conway $10,000 sequence
- Holidays related to Easter
- Horner's rule for polynomial evaluation
- Host introspection
- Hostname
- HTTP
- HTTPS
- Huffman coding
- Hunt the Wumpus
I
- I before E except after C
- IBAN
- Identity matrix
- Idiomatically determine all the lowercase and uppercase letters
- Image convolution
- Image noise
- Include a file
- Increment a numerical string
- Infinity
- Inheritance/Multiple
- Inheritance/Single
- Input loop
- Integer comparison
- Integer long division
- Integer sequence
- Interactive programming
- Introspection
- Inverted index
- Inverted syntax
- Isqrt (integer square root) of X
- Iterated digits squaring
K
L
- Langton's ant
- Largest int from concatenated ints
- Last Friday of each month
- Last letter-first letter
- Leap year
- Least common multiple
- Left factorials
- Leonardo numbers
- Letter frequency
- Levenshtein distance
- Linear congruential generator
- List comprehensions
- Literals/Floating point
- Literals/Integer
- Literals/String
- Logical operations
- Long multiplication
- Long primes
- Long year
- Longest common subsequence
- Longest common substring
- Longest increasing subsequence
- Look-and-say sequence
- Loop over multiple arrays simultaneously
- Loops/Break
- Loops/Continue
- Loops/Do-while
- Loops/Downward for
- Loops/For
- Loops/For with a specified step
- Loops/Foreach
- Loops/Increment loop index within loop body
- Loops/Infinite
- Loops/N plus one half
- Loops/Nested
- Loops/While
- Loops/With multiple ranges
- Loops/Wrong ranges
- LU decomposition
- Lucas-Lehmer test
- Ludic numbers
- Luhn test of credit card numbers
- Lychrel numbers
- LZW compression
M
- MAC Vendor Lookup
- Machine code
- Magic squares of odd order
- Make a backup file
- Make directory path
- Man or boy test
- Mandelbrot set
- Map range
- Matrix digital rain
- Matrix multiplication
- Matrix transposition
- Matrix-exponentiation operator
- Maximum triangle path sum
- Maze generation
- MD4
- MD5
- MD5/Implementation
- Memory allocation
- Menu
- Metaprogramming
- Metronome
- Middle three digits
- Miller–Rabin primality test
- Minesweeper game
- Modular exponentiation
- Modular inverse
- Modulinos
- Monte Carlo methods
- Monty Hall problem
- Mouse position
- Move-to-front algorithm
- Multifactorial
- Multiline shebang
- Multiple distinct objects
- Multiple regression
- Multiplication tables
- Munchausen numbers
- Mutual recursion
N
- N'th
- N-queens problem
- Named parameters
- Names to numbers
- Naming conventions
- Narcissist
- Narcissistic decimal number
- Nested function
- Nim game
- Non-continuous subsequences
- Non-decimal radices/Convert
- Non-decimal radices/Input
- Non-decimal radices/Output
- Nonogram solver
- Nth root
- Null object
- Number names
- Number reversal game
- Numeric error propagation
- Numerical integration
- Numerical integration/Gauss-Legendre Quadrature
O
P
- Palindrome detection
- Pangram checker
- Parallel brute force
- Parallel calculations
- Parametric polymorphism
- Parsing/RPN calculator algorithm
- Parsing/RPN to infix conversion
- Parsing/Shunting-yard algorithm
- Partial function application
- Pascal matrix generation
- Pascal's triangle
- Password generator
- Pattern matching
- Penney's game
- Percentage difference between images
- Perfect numbers
- Perfect shuffle
- Perlin noise
- Permutation test
- Permutations
- Permutations by swapping
- Pernicious numbers
- Phrase reversals
- Pi
- Pick random element
- Pig the dice game
- Pig the dice game/Player
- Plasma effect
- Playing cards
- Pointers and references
- Polymorphic copy
- Polymorphism
- Polynomial long division
- Polynomial regression
- Population count
- Power set
- Pragmatic directives
- Price fraction
- Primality by trial division
- Primality by Wilson's theorem
- Prime decomposition
- Primorial numbers
- Priority queue
- Probabilistic choice
- Product of divisors
- Program name
- Program termination
- Proper divisors
- Pythagorean triples
R
- Random number generator (device)
- Random number generator (included)
- Random numbers
- Range expansion
- Range extraction
- Rate counter
- Ray-casting algorithm
- RCRPG
- Read a configuration file
- Read a file character by character/UTF8
- Read a file line by line
- Read a specific line from a file
- Read entire file
- Real constants and functions
- Record sound
- Reduced row echelon form
- Regular expressions
- Remove duplicate elements
- Remove lines from a file
- Remove vowels from a string
- Rename a file
- Rep-string
- Repeat
- Repeat a string
- Respond to an unknown method call
- Return multiple values
- Reverse a string
- Reverse words in a string
- RIPEMD-160
- Robots
- Robots/Common Lisp
- Roman numerals/Decode
- Roman numerals/Encode
- Roots of a function
- Roots of a quadratic function
- Roots of unity
- Rot-13
- RPG attributes generator
- RSA code
- Run-length encoding
- Runge-Kutta method
- Runtime evaluation
- Runtime evaluation/In an environment
S
- S-expressions
- Scope modifiers
- Search a list
- Search a list of records
- SEDOLs
- Self-describing numbers
- Semiprime
- Semordnilap
- Send an unknown method call
- Sequence of non-squares
- Sequence of primes by trial division
- Set
- Set consolidation
- Set of real numbers
- Seven-sided dice from five-sided dice
- SHA-1
- SHA-256
- Shell one-liner
- Shift list elements to left by 3
- Short-circuit evaluation
- Show ASCII table
- Show the epoch
- Sierpinski carpet
- Sierpinski triangle
- Sieve of Eratosthenes
- Simple database
- Simple windowed application
- Simulate input/Mouse
- Singleton
- Singly-linked list/Element definition
- Singly-linked list/Element insertion
- Singly-linked list/Traversal
- Sleep
- Sockets
- Sort a list of object identifiers
- Sort an array of composite structures
- Sort an integer array
- Sort disjoint sublist
- Sort numbers lexicographically
- Sort stability
- Sort the letters of string in alphabetical order
- Sort using a custom comparator
- Sorting algorithms/Bead sort
- Sorting algorithms/Bogosort
- Sorting algorithms/Bubble sort
- Sorting algorithms/Cocktail sort
- Sorting algorithms/Comb sort
- Sorting algorithms/Counting sort
- Sorting algorithms/Gnome sort
- Sorting algorithms/Heapsort
- Sorting algorithms/Insertion sort
- Sorting algorithms/Merge sort
- Sorting algorithms/Pancake sort
- Sorting algorithms/Permutation sort
- Sorting algorithms/Quicksort
- Sorting algorithms/Selection sort
- Sorting algorithms/Shell sort
- Sorting algorithms/Sleep sort
- Sorting algorithms/Stooge sort
- Sorting algorithms/Strand sort
- Soundex
- Sparkline in unicode
- Special pythagorean triplet
- Special variables
- Spelling of ordinal numbers
- Spiral matrix
- Split a character string based on change of character
- Square but not cube
- Stack
- Stack traces
- Stair-climbing puzzle
- Stern-Brocot sequence
- String append
- String case
- String comparison
- String concatenation
- String interpolation (included)
- String length
- String matching
- String prepend
- Strip a set of characters from a string
- Strip comments from a string
- Strip control codes and extended characters from a string
- Strip whitespace from a string/Top and tail
- Subleq
- Substring
- Substring/Top and tail
- Subtractive generator
- Sudoku
- Sum and product of an array
- Sum and product puzzle
- Sum digits of an integer
- Sum multiples of 3 and 5
- Sum of a series
- Sum of divisors
- Sum of squares
- Sum to 100
- Summarize and say sequence
- Symmetric difference
- Synchronous concurrency
- System time
T
- Take notes on the command line
- Temperature conversion
- Terminal control/Clear the screen
- Terminal control/Coloured text
- Terminal control/Cursor movement
- Terminal control/Cursor positioning
- Terminal control/Dimensions
- Terminal control/Display an extended character
- Terminal control/Hiding the cursor
- Terminal control/Inverse video
- Terminal control/Positional read
- Terminal control/Preserve screen
- Terminal control/Restricted width positional input/No wrapping
- Terminal control/Restricted width positional input/With wrapping
- Terminal control/Ringing the terminal bell
- Terminal control/Unicode output
- Ternary logic
- Test a function
- Text processing/1
- Text processing/Max licenses in use
- The ISAAC Cipher
- The Twelve Days of Christmas
- Thiele's interpolation formula
- Thue-Morse
- Tic-tac-toe
- Time a function
- Tokenize a string
- Tokenize a string with escaping
- Top rank per group
- Topological sort
- Towers of Hanoi
- Trabb Pardo–Knuth algorithm
- Tree traversal
- Trigonometric functions
- Truncatable primes
- Twelve statements
U
V
W
- Execution method/Compiled/Machine code
- Garbage collection/Yes
- Typing/Safe
- Typing/Strong
- Typing/Checking/Dynamic
- Typing/Checking/Static
- Programming Languages
- Implementations
- Lisp Implementations
- Lisp related
- Programming paradigm/Functional
- Programming paradigm/Procedural
- Programming paradigm/Object-oriented
- Programming paradigm/Reflective