Common Lisp library for interacting with PostgreSQL
postmodern is a Common Lisp library for interacting with PostgreSQL databases. It provides the following features:
Efficient communication with the database server without need for foreign libraries.
Support for UTF-8 on Unicode-aware Lisp implementations.
A syntax for mixing SQL and Lisp code.
Convenient support for prepared statements and stored procedures.
A metaclass for simple database-access objects.
This package produces 4 systems: postmodern, cl-postgres, s-sql, simple-date
SIMPLE-DATE is a very basic implementation of date and time objects, used to support storing and retrieving time-related SQL types. It is not loaded by default and you can use local-time (which has support for timezones) instead.
S-SQL is used to compile s-expressions to strings of SQL code, escaping any Lisp values inside, and doing as much as possible of the work at compile time.
CL-POSTGRES is the low-level library used for interfacing with a PostgreSQL server over a socket.
POSTMODERN itself is a wrapper around these packages and provides higher level functions, a very simple data access object that can be mapped directly to database tables and some convient utilities. It then tries to put all these things together into a convenient programming interface
- Website: https://marijnhaverbeke.nl/postmodern/
- Licenses: Zlib
- Package source: gnu/packages/lisp-xyz.scm
- Builds: See build status
- Issues: See known issues
ecl-postmodern 1.32.9 as follows:
guix install firstname.lastname@example.org
Or install the latest version:
guix install ecl-postmodern
You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the
guix shell documentation for more information.