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 webring send a patch to ~whereiseveryone/toys@lists.sr.ht adding your channel as an entry in channels.scm.
A decimal number has an integer mantissa and a negative exponent. The exponent can be interpreted as the number of decimal places in the value.
This library provides tools for ensuring that class members are shared.
This package defines classes of monads that can perform multiple executions in parallel and combine their results. For any monad that's an instance of the class, the package re-implements a subset of the Control.Monad interface, but with parallel execution.
This package provides Haskell bindings to SDL2_image.
Compatibility layer for Data.Array.Byte providing boxed wrappers for ByteArray and MutableByteArray and relevant instances for GHC < 9.4.
Using the API Annotations available from GHC 7.10.2, this library provides a means to round-trip any code that can be compiled by GHC, currently excluding .lhs files.
This package provides a basic random number generation library, including the ability to split random number generators.
This Haskell package provides additional data structures, and other added capabilities layered on top of the Par monad.
This package provides a Pure Haskell implementation of the SplitMix pseudorandom number generator. SplitMix is a "splittable" pseudorandom number generator that is quite fast: 9 64-bit arithmetic/logical operations per 64 bits generated. SplitMix is tested with two standard statistical test suites (DieHarder and TestU01, this implementation only using the former) and it appears to be adequate for "everyday" use, such as Monte Carlo algorithms and randomized data structures where speed is important. In particular, it should not be used for cryptographic or security applications, because generated sequences of pseudorandom values are too predictable (the mixing functions are easily inverted, and two successive outputs suffice to reconstruct the internal state).
Lets multiple threads and external processes concurrently output to the console, without it getting all garbled up.
Built on top of that is a way of defining multiple output regions, which are automatically laid out on the screen and can be individually updated by concurrent threads. Can be used for progress displays etc.
Rose (n-ary) trees with both upwards- (i.e. cached) and downwards-traveling (i.e. accumulating) monoidal annotations. This is used as the core data structure underlying the diagrams framework, but potentially has other applications as well.
This package provides a plotting library for Haskell, using gnuplot for rendering.
With this package you can build a Storable instance of a record type from Storable instances of its elements in an elegant way. It does not do any magic, just a bit arithmetic to compute the right offsets, that would be otherwise done manually or by a preprocessor like C2HS. There is no guarantee that the generated memory layout is compatible with that of a corresponding C struct. However, the module generates the smallest layout that is possible with respect to the alignment of the record elements.
This package provides automatic formatting for Haskell files. Both a library and an executable.
This package provides Data.Scientific, which provides the number type Scientific. Scientific numbers are arbitrary precision and space efficient. They are represented using scientific notation.
This package provides vaults for Haskell. A vault is a persistent store for values of arbitrary types. It's like having first-class access to the storage space behind IORefs. The data structure is analogous to a bank vault, where you can access different bank boxes with different keys; hence the name. Also provided is a locker type, representing a store for a single element.
ResourceT is a monad transformer which creates a region of code where you can safely allocate resources.
This module defines the Pandoc data structure, which is used by pandoc to represent structured documents. It also provides functions for building up, manipulating and serialising Pandoc structures.
A priority search queue efficiently supports the operations of both a search tree and a priority queue. A Binding is a product of a key and a priority. Bindings can be inserted, deleted, modified and queried in logarithmic time, and the binding with the least priority can be retrieved in constant time. A queue can be built from a list of bindings, sorted by keys, in linear time.
This library provides free monads, which are useful for many tree-like structures and domain specific languages. If f is a Functor then the free Monad on f is the type of trees whose nodes are labeled with the constructors of f. The word "free" is used in the sense of "unrestricted" rather than "zero-cost": Free f makes no constraining assumptions beyond those given by f and the definition of Monad.
This package provides semigroups for Haskell. In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative binary operation. A semigroup generalizes a monoid in that there might not exist an identity element. It also (originally) generalized a group (a monoid with all inverses) to a type where every element did not have to have an inverse, thus the name semigroup.
This package provides type classes, a monad and a monad transformer that support unchecked extensible exceptions as well as asynchronous exceptions. It is compatible with the transformers package.
This package defines orphan instances that mimic instances available in later versions of base to a wider (older) range of compilers.
This Haskell library provides utilities creating, comparing, parsing and printing Universally Unique Identifiers or UUIDs.