CLSQL uses ASDF to compile and load its components. ASDF is included in the CCLAN collection.


CLSQL uses UFFI as a Foreign Function Interface (FFI) to support multiple ANSI Common Lisp implementations.


CLSQL's postgresql-socket interface uses Pierre Mai's md5 module.

Supported Common Lisp Implementation

The implementations that support CLSQL is governed by the supported implementations of UFFI. The following implementations are supported:

  • AllegroCL v6.2 through 8.0 on Debian Linux x86 & x86_64 & PowerPC, FreeBSD 4.5, and Microsoft Windows XP.

  • Lispworks v4.3 and v4.4 on Debian Linux and Microsoft Windows XP.

  • CMUCL 18e on Debian Linux, FreeBSD 4.5, and Solaris 2.8. 19c on Debian Linux.

  • SBCL 0.8.4 through 0.9.16 on Debian Linux.

  • SCL 1.1.1 on Debian Linux.

  • OpenMCL 0.14 PowerPC and 1.0pre AMD64 on Debian Linux .

Supported SQL Implementation

CLSQL supports the following databases:

  • MySQL (tested v3.23.51, v4.0.18, 5.0.24).

  • PostgreSQL (tested with v7.4 and 8.0 with both direct API and TCP socket connections.

  • SQLite version 2.

  • SQLite version 3.

  • Direct ODBC interface.

  • Oracle OCI.

  • Allegro's DB interface (AODBC).