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.
In Haskell you very often acquire values using the with... idiom using functions of type (a -> IO r) -> IO r. This idiom forms a Monad, which is a special case of the ContT monad (from transformers) or the Codensity monad (from kan-extensions). The main purpose behind this package is to provide a restricted form of these monads specialized to this unusually common case.
The reason this package defines a specialized version of these types is to:
be more beginner-friendly,
simplify inferred types and error messages, and:
provide some additional type class instances that would otherwise be orphan instances
This package profides a class for encoding and decoding UTF8 strings with instances for several common types. It also includes several functions for working with UTF8. It aims to be lightweight, depending only on Base and including only one module.
This package provides a monad transformer version of the ST monad for strict state threads.
More complex tests for chell.
This package contains bindings to the SDL 2 library, in both high- and low-level forms. The SDL namespace contains high-level bindings, where enumerations are split into sum types, and we perform automatic error-checking. The SDL.Raw namespace contains an almost 1-1 translation of the C API into Haskell FFI calls. As such, this does not contain sum types nor error checking. Thus this namespace is suitable for building your own abstraction over SDL, but is not recommended for day-to-day programming.
This package is a Haskell library for the representation, parsing, and pretty-printing of GLSL 1.50 code.
This package provides filtrable containers.
This package provides a pipe-based interface to the Aspell program (no dynamic linking required).
This library uses GHC.Generics to derive efficient optics (traversals, lenses and prisms) for algebraic data types in a type-directed way, with a focus on good type inference and error messages when possible. The library exposes a van Laarhoven interface. For an alternative interface, supporting an opaque optic type, see generic-optics.
This package allows you to have a README.md that at the same time is a literate Haskell program.
This library is simply a collection of linear-algebra related modules split from the statistics library.
This is a small wrapper around the directory, unix, and Win32 packages, for use with system-filepath. It provides a consistent API to the various versions of these packages distributed with different versions of GHC. In particular, this library supports working with POSIX files that have paths which can't be decoded in the current locale encoding.
This package provides a Storable instance for pairs and triples which should be binary compatible with C99 and C++. The only purpose of this package is to provide a standard location for this instance so that other packages needing this instance can play nicely together.
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.
Alternative parser for the Cassava package written with Megaparsec that provides for better error messages at the expense of some speed.
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.
An integration library for hspec and hedgehog.
This library provides data structures for describing changes to other data structures. In this library, a patch is something that can be applied, analogous to a function, and which distinguishes returning the argument it was provided from returning something else.
This Haskell package uses a monad transformer approach for logging.
This package provides Template Haskell functions for determining source code locations of messages.
This is the IRC core library for glirc. The client is available in its own glirc package.
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 library provides instances of Binary for the types defined in the vector package, making it easy to serialize vectors to and from disk. We use the generic interface to vectors, so all vector types are supported. Specific instances are provided for unboxed, boxed and storable vectors.
This package enables integration of terminal screen state in html pages.
This package provides a simple XML library for Haskell.