Enter the query into the form above. You can look for specific version of a package by using @ symbol like this: gcc@10.
API method:
GET /api/packages?search=hello&page=1&limit=20
where search is your query, page is a page number and limit is a number of items on a single page. Pagination information (such as a number of pages and etc) is returned
in response headers.
If you'd like to join our channel search send a patch to ~whereiseveryone/toys@lists.sr.ht adding your channel as an entry in channels.scm.
Moira is a library for monitoring and, if necessary, restarting long-running threads. In principle, it is like an in-Lisp process supervisor.
qbase64 provides a fast and flexible base64 encoder and decoder for Common Lisp.
Cluffer is a library for representing the buffer of a text editor. As such, it defines a set of CLOS protocols for client code to interact with the buffer contents in various ways, and it supplies different implementations of those protocols for different purposes.
FSet is a functional set-theoretic collections library for Common Lisp. Functional means that all update operations return a new collection rather than modifying an existing one in place. Set-theoretic means that collections may be nested arbitrarily with no additional programmer effort; for instance, sets may contain sets, maps may be keyed by sets, etc.
SLY is a fork of SLIME, an IDE backend for Common Lisp. It also features a completely redesigned REPL based on Emacs's own full-featured comint-mode, live code annotations, and a consistent interactive button interface. Everything can be copied to the REPL. One can create multiple inspectors with independent history.
This library implements special functions and has a focus on high accuracy double-float calculations using the latest algorithms.
CHRONICITY is Common Lisp natural language date and time parser inspired by Ruby's Chronic.
OpenAPI client system generator.
This library is a portable compatibility layer around package local nicknames (PLN). This was done so there is a portability library for the PLN API not included in DEFPACKAGE.
Calispel is a Common Lisp library for thread-safe message-passing channels, in the style of the occam programming language, also known as communicating sequential processes (CSP). See https://en.wikipedia.org/wiki/Communicating_sequential_processes.
Calispel channels let one thread communicate with another, facilitating unidirectional communication of any Lisp object. Channels may be unbuffered, where a sender waits for a receiver (or vice versa) before either operation can continue, or channels may be buffered with flexible policy options.
Because sending and receiving on a channel may block, either operation can time out after a specified amount of time.
A syntax for alternation is provided (like ALT in occam, or Unix select()): given a sequence of operations, any or all of which may block, alternation selects the first operation that doesn't block and executes associated code. Alternation can also time out, executing an "otherwise" clause if no operation becomes available within a set amount of time.
Calispel is a message-passing library, and as such leaves the role of threading abstractions and utilities left to be filled by complementary libraries such as Bordeaux-Threads and Eager Future.
doplus is an iteration macro for Common Lisp.
This is a library for access to atomic operation primitives such as compare-and-swap. It aims to be a rather thin layer over what the implementations offer.
This package provides functions for generating lorem ipsum text.
This library enables path variables in networking routes when using Hunchenissr for Common Lisp. If a part of the path (between two slashes) starts with a question mark (?), that symbol (without question mark) will be bound to whatever value was in the same place in the URL (as a string).
This library lets you build a metaclass which in turn lets you specify extra slot options in its classes. Options may be easily inspected and custom inheritance may be set up. The Meta-Object Protocol (MOP) is used for the implementation - through closer-mop. Some convenience function for processing slot options are also available.
Possible use case: you want to automatically set up some definitions based on some slots, but you want to have control over it right in the class definition.
This is an extension to MODULARIZE that allows your application to define interfaces in-code that serve both as a primary documentation and as compliance control.
DEFLATE data, defined in RFC1951, forms the core of popular compression formats such as zlib (RFC 1950) and gzip (RFC 1952). As such, Chipz also provides for decompressing data in those formats as well. BZIP2 is the format used by the popular compression tool bzip2.
This is a Common Lisp wrapper for libjpeg-turbo library which provides TurboJPEG API for compressing and decompressing JPEG images.
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.
The canonical way to determine the size of a file in bytes, using Common Lisp, is to open the file with an element type of (unsigned-byte 8) and then calculate the length of the stream. This is less than ideal. In most cases it is better to get the size of the file from its metadata, using a system call.
This library exports a single function, file-size-in-octets. It returns the size of a file in bytes, using system calls when possible.
This package makes it possible to name classes by lists of symbols instead of symbols.
This package implements a simple interface for using WebSockets via Common Lisp.
This is a keymap facility for Common Lisp inspired by Emacsy (keymap.scm) which is inspired by Emacs.
Support prefix keys to other keymaps. For instance, if you prefix my-mode-map with C-c, then all bindings for my-mode will be accessible after pressing C-c.
List all bindings matching a given prefix. (Also known as which-key in Emacs.)
List the bindings associated to a command.
Support multiple inheritance.
Support keycode.
Validate keyspec at compile time.
define-key can set multiple bindings in a single call.
Support multiple scheme to make it easy to switch between, say, Emacs-style and VI-style bindings. This orthogonality to keymaps composes better than having multiple keymaps: changing scheme applies to the entire program, which is easier than looping through all keymaps to change them.
Translate keyspecs as a fallback. For instance if shift-a is not bound, check A.
Behaviour can be customized with global parameters such as *print-shortcut*.
The compose function can merge multiple keymaps together.
Support multiple arguments when that makes sense (e.g. multiple keymaps for lookup-key).
Key remapping à-la Emacs.
Typed keymaps, i.e. keymaps where bound values can only be of a given type. This is convenient to catch typos, for instance when binding 'FOO instead of #'FOO.
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.