cl-guix-utils is a collection of Common lisp utilities for using guix. The primary feature is being able to load Common Lisp guix packages by system name without restarting the lisp process.
cl-guix-utils is a collection of Common lisp utilities for using guix. The primary feature is being able to load Common Lisp guix packages by system name without restarting the lisp process.
This library is a portable compatibility layer around "Common Lisp the Language, 2nd Edition" (https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node102.html) and it exports symbols from implementation-specific packages.
This is a library that uses the other 3d-* math libraries to present an encapsulation for a spatial transformation. It offers convenience functions for operating on such transformations and for converting between them and the alternative 4x4 matrix representation.
This Common Lisp library implements object prevalence (see https://en.wikipedia.org/wiki/System_prevalence). It allows for (de)serializing to and from s-exps as well as XML. Serialization of arbitrary classes and cyclic data structures are supported.
Markup allows the use of HTML syntax with in Common Lisp code. This has the advantage of being able to copy HTML snippets and have them instantly be functional, less double quotes than a s-expression approach, and designers will be able to understand the embedded HTML.
The Babel library solves a similar problem while understanding more encodings. Trivial UTF-8 was written before Babel existed, but for new projects you might be better off going with Babel. The one plus that Trivial UTF-8 has is that it doesn't depend on any other libraries.
Bind extends the idea of of let and destructing to provide a uniform syntax for all your accessor needs. It combines let
, destructuring-bind
, with-slots
, with-accessors
, structure editing, property or association-lists, and multiple-value-bind
and a whole lot more into a single form.
Flexi-streams is an implementation of "virtual" bivalent streams that can be layered atop real binary or bivalent streams and that can be used to read and write character data in various single- or multi-octet encodings which can be changed on the fly. It also supplies in-memory binary streams which are similar to string streams.
This library provides functions for determining the value types of Common Lisp forms, based on type information contained in the environment.
In order for this library to work the values types of variables and return types of functions have to be declared.
Macros and symbol-macros are fully expanded and all special forms, except CATCH
, are supported.
Common Lisp ships with a set of powerful built in data structures including the venerable list, full featured arrays, and hash-tables. CL-containers enhances and builds on these structures by adding containers that are not available in native Lisp (for example: binary search trees, red-black trees, sparse arrays and so on), and by providing a standard interface so that they are simpler to use and so that changing design decisions becomes significantly easier.
HTML-TEMPLATE is a Common Lisp library which can be used to fill templates with arbitrary (string) values at runtime. The result does not have to be HTML.
It is loosely modeled after the Perl module HTML::Template
and partially compatible with a its syntax, though both libraries contain some extensions that the other does not support.
HTML-TEMPLATE translates templates into efficient closures which can be re-used as often as needed. It uses a cache mechanism so you can update templates while your program is running and have the changes take effect immediately.
This StumpWM Module provides a notifications server for StumpWM.
This package contains a support library for other hu.dwim systems.
fast-websocket
is an optimized low-level WebSocket protocol parser/composer.
With static-vectors
, you can create vectors allocated in static memory.
This package provides a priority queue implemented with an array-based heap.
This is a Commin Lisp library for operating on permutations and permutation groups.
Splits sequence into a list of subsequences delimited by objects satisfying the test.
cl-draw-cons-tree
draws a cons tree in ASCII-art style.
BKNR.DATASTORE is an in-memory CLOS based database with transactions for Common Lisp.
This is a R7RS Scheme implementation designed to run within a Common Lisp environment.
Portability library for IEEE float features that are not covered by the Common Lisp standard.
This is a Common Lisp library to present tabular data in ascii-art tables.