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.
This package provides a custom prelude with no dependencies apart from the base package.
Foundation has the following goals:
provide a base like sets of modules that provide a consistent set of features and bugfixes across multiple versions of GHC (unlike base).
provide a better and more efficient prelude than base's prelude.
be self-sufficient: no external dependencies apart from base;
provide better data-types: packed unicode string by default, arrays;
Numerical classes that better represent mathematical things (no more all-in-one
Num);I/O system with less lazy IO.
This Haskell package provides interfaces and helper functions for the ghc-persistent package.
Difference lists are a list-like type supporting O(1) append. This is particularly useful for efficient logging and pretty printing (e.g. with the Writer monad), where list append quickly becomes too expensive.
This package allows simple reflection of expressions containing variables. Reflection here means that a Haskell expression is turned into a string. The primary aim of this package is teaching and understanding; there are no options for manipulating the reflected expressions beyond showing them.
This library implements unicode-casemap, the simple, non locale-sensitive unicode collation algorithm described in RFC 5051. Proper unicode collation can be done using text-icu, but that is a big dependency that depends on a large C library, and rfc5051 might be better for some purposes.
This is a pretty printing library based on Wadler's paper A Prettier Printer. This version allows the library user to declare overlapping instances of the Pretty class.
This module provides set and multiset operations on ordered lists.
This package implements an API for accessing the Domain Name Service (DNS) resolver service via the standard libresolv system library (whose API is often available directly via the standard libc C library) on Unix systems.
This library provides bindings for the Dot language used by the Graphviz suite of programs for visualising graphs, as well as functions to call those programs. Main features of the graphviz library include:
Almost complete coverage of all Graphviz attributes and syntax
Support for specifying clusters
The ability to use a custom node type
Functions for running a Graphviz layout tool with all specified output types
Generate and parse Dot code with two options: strict and liberal
Functions to convert FGL graphs and other graph-like data structures
Round-trip support for passing an FGL graph through Graphviz to augment node and edge labels with positional information, etc.
Long lived application data typically should not contain any thunks. This library can be used to examine values for unexpected thunks, which can then be used in assertions. This can be invaluable in avoiding memory leaks, or tracking down existing ones.
Boxes is a pretty-printing library for laying out text in two dimensions, using a simple box model.
This library provides a class for non-negative numbers, a wrapper which can turn any ordered numeric type into a member of that class, and a lazy number type for non-negative numbers (a generalization of Peano numbers).
Knowledge of GHC's installation directories.
This package provides a dependent sum is a generalization of a particular way of thinking about the Either type. Either a b can be thought of as a 2-tuple (tag, value), where the value of the tag determines the type of the value. In particular, either tag = Left and value :: a or tag = Right and value :: b. This package allows you to define your own dependent sum types by using your own "tag" types.
Haddock is a documentation-generation tool for Haskell libraries. These modules expose some functionality of it without pulling in the GHC dependency. Please note that the API is likely to change so specify upper bounds in your project if you can't release often. For interacting with Haddock itself, see the ‘haddock’ package.
This library encourages an error-handling style that directly uses the type system, rather than out-of-band exceptions.
This library provides extensible optionally-pure exceptions for Haskell.
Runtime exceptions - as exposed in base by the Control.Exception module - have long been an intimidating part of the Haskell ecosystem. This package is intended to overcome this. It provides a safe and simple API on top of the existing exception handling machinery. The API is equivalent to the underlying implementation in terms of power but encourages best practices to minimize the chances of getting the exception handling wrong.
This Haskell package provides an either monad transformer.
This package provides a Haskell module for creating 2D and 3D plots using gnuplot.
This package tries to compat as many time features as possible.
A data-type like Either but with differing properties and type-class instances.
Library support is provided for this different representation, including lens-related functions for converting between each and abstracting over their similarities.
The Validation data type is isomorphic to Either, but has an instance of Applicative that accumulates on the error side. That is to say, if two (or more) errors are encountered, they are appended using a Semigroup operation.
As a consequence of this Applicative instance, there is no corresponding Bind or Monad instance. Validation is an example of, "An applicative functor that is not a monad."
This package provides IO operations from async package lifted to any instance of MonadBase or MonadBaseControl.
This package provides a binary serialization library, similar to binary, that introduces an isolate primitive for parser isolation, and labeled blocks for better error messages.