mod-mult
mod-expt
mod-inv
mod-sqrt <- under implementation
mod-nth-root <- under implementation
dlog <- under implementation
Eazy-Gnuplot is a Common Lisp interface to gnuplot which eschews CFFI, CLOS and structures. It communicates with gnuplot
via *standard-output*
, and users can plot data by printing to that stream.
Binary-types is a Common Lisp package for reading and writing binary files. Binary-types provides macros that are used to declare the mapping between Lisp objects and some binary (i.e. octet-based) representation.
cl-sbcl-cl-ipfs-api2
is a pretty simple set of IPFS bindings for Common Lisp, using the HTTP API for (almost) everything, except for pubsub (which uses the locally installed go-ipfs program).
This is a general Freetype 2 wrapper for Common Lisp using CFFI. It's geared toward both using Freetype directly by providing a simplified API, as well as providing access to the underlying C structures and functions for use with other libraries which may also use Freetype.
cl-ansi-text
provides utilities which enable printing to an ANSI terminal with colored text. It provides the macro with-color
which causes everything printed in the body to be displayed with the provided color. It further provides functions which will print the argument with the named color.
cl-num-utils
implements simple numerical functions for Common Lisp, including:
num=
, a comparison operator for floatssimple arithmeric functions, like
sum
andl2norm
elementwise operations for arrays
intervals
special matrices and shorthand for their input
sample statistics
Chebyshev polynomials
univariate rootfinding
parse-number
is a library of functions for parsing strings into one of the standard Common Lisp number types without using the reader. parse-number
accepts an arbitrary string and attempts to parse the string into one of the standard Common Lisp number types, if possible, or else parse-number
signals an error of type invalid-number
.
This data structure can be used to store the history of visited paths or URLs with a file or web browser, in a way that no “forward” element is ever forgotten.
The history tree is “global” in the sense that multiple owners (e.g. tabs) can have overlapping histories. On top of that, an owner can spawn another one, starting from one of its nodes (typically when you open a URL in a new tab).
This library is a collection of pseudo random number generators.
While Common Lisp does provide a RANDOM
function, it does not allow the user to pass an explicit SEED
, nor to portably exchange the random state between implementations. This can be a headache in cases like games, where a controlled seeding process can be very useful.
For both curiosity and convenience, this library offers multiple algorithms to generate random numbers, as well as a bunch of generally useful methods to produce desired ranges.
This package provides a Common Lisp implementation of ActivityPub and ActivityStreams standards for social networking.
Features:
Parsing and un-parsing ActivityStreams JSON-LD objects to/from CLOS objects with convenient accessors on those.
Sending and fetching ActivityStreams objects to/from the ActivityStreams-enabled HTTP(S) URLs.
Semantic info extraction with methods like
name*
,url*
,author*
, andpublished*
.No reliance on JSON parser.
njson
is used for parser-independent JSON handling. Load the parser backend you prefer!
This is a Common Lisp version of UglifyJS, a JavaScript compressor. It works on data produced by parse-js
to generate a minified version of the code. Currently it can:
reduce variable names (usually to single letters)
join consecutive
var
statementsresolve simple binary expressions
group most consecutive statements using the
sequence
operator (comma)remove unnecessary blocks
convert
IF
expressions in various ways that result in smaller coderemove some unreachable code
On Cliki.net <http://www.cliki.net/Common%20Lisp%20Utilities>, there is a collection of Common Lisp Utilities, things that everybody writes since they're not part of the official standard. There are some very useful things there; the only problems are that they aren't implemented as well as you'd like (some aren't implemented at all) and they aren't conveniently packaged and maintained. It takes quite a bit of work to carefully implement utilities for common use, commented and documented, with error checking placed everywhere some dumb user might make a mistake.
Common Lisp port of the QuickCheck unit test framework
This package provides simple format directives to print in colors.
This library provides a WebSockets extension for the Huchentoot web server.
The Distributions package provides a collection of probabilistic distributions and related functions
This library provides an asynchronous process execution mechanism for Common Lisp.
This package provides an automatic generator for ASDF's .asd files.
This is a Common Lisp library to build and compose SXQL queries dynamically.
Spatial-trees is a set of dynamic index data structures for spatially-extended data.
This library implements various functions to access status information about the machine, process, etc.
GARBAGE-POOLS is Common Lisp re-implementation of the APR Pools for resource management.