This library implements efficient algorithms that calculate various string metrics in Common Lisp:
Damerau-Levenshtein distance
Hamming distance
Jaccard similarity coefficient
Jaro distance
Jaro-Winkler distance
Levenshtein distance
Normalized Damerau-Levenshtein distance
Normalized Levenshtein distance
Overlap coefficient
This package provides a concise, intuitive and flexible macro for trivial lambdas that eschews explicit naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical gaps are left in the positional references. Further convenience features are provided.
Command-Line-Args provides a main macro (command) that wraps a defun form and creates a new function that parses the command line arguments. It has support for command-line options, positional, and variadic arguments. It also generates a basic help message. The interface is meant to be easy and non-intrusive.
This is a library for reading semi-raw user input from terminals. Semi-raw as in, we can't detect if the user pressed the Control key alone, and the function keys are a mystery. What is supported, however, is:
Regular characters
Control+[key]
Alt+[key]
Control+Alt+[key]
Trivial-Benchmark runs a block of code many times and outputs some statistical data for it. On SBCL this includes the data from time, for all other implementations just the real-time and run-time data. However, you can extend the system by adding your own metrics to it, or even by adding additional statistical computeations.
One of the many things that didn't quite get into the Common Lisp standard was how to get a Lisp to output its call stack when something has gone wrong. As such, each Lisp has developed its own notion of what to display, how to display it, and what sort of arguments can be used to customize it. trivial-backtrace is a simple solution to generating a backtrace portably.
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 allows flexible specification of package-local preferences.
Converts Markdown text into CommonDoc nodes and vice versa.
This package provides a simple yet powerful value inheritance scheme.
This is a Common Lisp library for solving linear programming problems.
This StumpWM module can take screenshots and store them as PNG files.
This package provides a functionality augmenting Hunchentoot error pages and logs with request and session information.
This package provides a shim between Python3 (specifically, the CPython implementation of Python) and Common Lisp.
This library contains a collection of machine learning algorithms for online linear classification written in Common Lisp.
PARSER-COMBINATORS is a library implementing monadic parser combinators in Common Lisp, similar in concept to Haskell Parsec system.
VAS-STRING-METRICS provides the Jaro, Jaro-Winkler, Soerensen-Dice, Levenshtein, and normalized Levenshtein string distance/similarity metrics algorithms.
40ants-asdf-system provides a class for being used instead of asdf:package-inferred-system in 40ANT systems.
Common Lisp implementation of Graham Cormode and S. Muthukrishnan's Effective Computation of Biased Quantiles over Data Streams in ICDE’05.
CL-DATA-STRUCTURES is a Common Lisp library providing a portable collection of mutable and immutable data structures (dictionaries, sets, queues, sequences) and algorithms.
Temporal-Functions adds tlambda & tdefun along with a small collection of related funcs and macros. tlambda is a lambda with an internal concept of time.
This package provides an enhanced EVAL-WHEN macro that supports a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity.
This package provides the getopt function to parse command-line options. The options are organized in valid options, other arguments and unknown arguments. Optional Lisp conditions for error situations are also defined.
charje.lambda-list can parse every kind of lambda list defined in the ANSI Common Lisp standard. Parsing yields only one object that has all the parsed parts of the lambda list inside. New kinds of lambda lists can be made too.