Common Lisp libraries exist for many purposes. Here we will showcase a small sampling of mature, useful, and free packages available, showing some of the functionality they provide.

System Utilities [ edit ]

ASDF — Another System Definition Facility clbuild — A script to update/install the latest versions of all the most important Common Lisp packages Roswell - An implementation installer and script launcher

Language Extension [ edit ]

These libraries add new control structures to the Common Lisp language.

Serapeum - Another general-purpose utility library. rutils - radical yet reasonable syntactic utilities for Common Lisp. Iterate — Easy and extensible iteration Extended Binding — Pattern matching, anaphoric control structures, and more Cells — A constraint based programming paradigm that operates in a way similar to spread sheets Screamer — Efficient, nondeterminism for Common Lisp FSet — Functional programming in Common Lisp generic-cl - Generic function interface to standard Common Lisp functions (equality, comparison, arithmetic, objects, iterator, sequences,…). cl21 An experimental project that brings more modern idioms into Common Lisp

Data Structures [ edit ]

CL-CONTAINERS — A library for abstracting data structures details FSet - A functional, set-theoretic collections data structure library. cl-data-structures - a portable collection of data structures and algorithms (mainly dicts and sequences, with some statistical functions). cl-competitive - Common Lisp algorithms collection for competitive programming.

Database [ edit ]

cl-dbi - A database independant interface postmodern - A library for interacting with PostgreSQL databases Mito - An ORM, with migrations, relationships and DB schema versioning Crane - An ORM, based on the CL Objects System, with migrations

Parsing and Text processing [ edit ]

CL-PPCRE — regular expressions library CXML — An XML parsing library CL-HTML-Parse — Parsing HTML CL-YACC — A parser generator CL-Walker — A Common Lisp parser for Common Lisp

Serialization and Persistent data [ edit ]

Serialization — serialization of Common Lisp data (via cl-serialization and cl-store) ELEPHANT — A persistent object system CL-Perec — A persistent object system

GUI [ edit ]

Ltk — Common Lisp interface to Tk (portable GUI library) McCLIM — A Common Lisp GUI builder IUP- CFFI bindings to the IUP Portable User Interface library. IUP is cross-platform (Windows, macOS, GNU/Linux, with new Android, iOs, Cocoa and Web Assembly drivers), has many widgets, has a small api and is actively developed.

Graphics [ edit ]

Vecto — A library for drawing and rastering vector graphic images CL-OpenGL — A set of GL, GLU, and GLUT bindings

Audio [ edit ]

Open Music - a visual programming, computer-aided composition environment. CLM - Common Lisp Music is a music synthesis and signal processing package in the Music V family. It provides much the same functionality as Stk, Csound, SuperCollider, PD, CMix, cmusic, and Arctic — a collection of functions that create and manipulate sounds, aimed primarily at composers (in CLM's case anyway). Incudine - Music/DSP programming environment for Common Lisp. Useful to design software synthesizers or sound plugins from scratch. It is also a compositional tool that allows to produce high quality sounds controllable at the sample level, defining and redefining the digital signal processors and the musical structures on-the-fly.

Web and Network [ edit ]

Dexador — A full featured HTTP client (that aims at replacing Drakma) Portable Allegro Serve — A fairly light weight, multithreaded, HTTP server Hunchentoot — A Web application server written in Common Lisp Caveman - A fully featured web framework Plump - An html/xml parser, tolerant on malformed markup lquery - A jquery-like DOM/HTML manipulation library Djula - A port of Django templates Parenscript - A translator from Common Lisp to Javascript Wuwei - Examples on how to do Ajax in Lisp

Further reading [ edit ]

http://cliki.net — The Common Lisp Wiki. Contains links to almost all existing free software Common Lisp libraries, and a few proprietary ones as well.

http://common-lisp.net/ — Hosts a vast number of Common Lisp projects.

https://github.com/CodyReichert/awesome-cl - A community-based list of "awesome" Common Lisp libraries