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 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."
Happy is a parser generator for Haskell. Given a grammar specification in BNF, Happy generates Haskell code to parse the grammar. Happy works in a similar way to the yacc tool for C.
This package provides an abstract class to manipulate sequence of bytes. The use case of this class is abstracting manipulation of types that are just wrapping a bytestring with stronger and more meaniful name.
This package provides a collection of Haskell functions for splitting lists into parts, akin to the split function found in several mainstream languages.
This package provides a backwards compatibility layer for Template Haskell newer than 2.8.
The functional graph library, FGL, is a collection of type and function definitions to address graph problems. The basis of the library is an inductive definition of graphs in the style of algebraic data types that encourages inductive, recursive definitions of graph algorithms.
This Haskell package is an abstract interface only. It provides a number of type clasess, but not an implementation. The type classes separate different levels of Par functionality. See the Control.Monad.Par.Class module for more details.
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.
Backported versions of types that were added to transformers in transformers 0.3 and 0.4 for users who need strict transformers 0.2 or 0.3 compatibility to run on old versions of the platform.
This package provides utilities and combinators for parsing command line options in Haskell.
This package provides the core modules underlying diagrams, an embedded domain-specific language for compositional, declarative drawing.
This package provides a bunch of ad hoc classes for accessing parts of a container. In practice this package is largely subsumed by the ghc-lens, but it is maintained for now as it has much simpler dependencies.
This module locates the full directory of the running program, to allow the use of paths relative to it. FindBin supports invocation of Haskell programs via "ghci", via "runhaskell/runghc", as well as compiled as an executable.
This library lets you write interactive programs without callbacks or side-effects. Functional Reactive Programming (FRP) uses composable events and time-varying values to describe interactive systems as pure functions. Just like other pure functional code, functional reactive code is easier to get right on the first try, maintain, and reuse. Reflex is a fully-deterministic, higher-order FRP interface and an engine that efficiently implements that interface.
This Haskell library provides a function for computing the difference between (expression) trees. It also provides a way to compute the difference between arbitrary abstract datatypes (ADTs) using Generics-derivable helpers.
A thread safe API to write a line of textual data to a Handle, such as sending some messages to the terminal - that has the following properties:
Properly handle character encoding settings on the Handle
For reasonably sized messages, ensure that the entire message is written in one chunk to avoid interleaving data with other threads
Avoid unnecessary memory allocations and copies
Minimize locking.
This library provides various semigroups, specialized containers and a general map/reduce framework for Haskell.
This package provides utilities to inline C++ code into Haskell using inline-c.
A package for convenient access to high-resolution clock and timer functions of different operating systems via a unified API.
This library provides Kan extensions, Kan lifts, various forms of the Yoneda lemma, and (co)density (co)monads for Haskell.
Values of custom types usually have invariants imposed upon them. This package provides the Validity type class, which makes these invariants explicit by providing a function to check whether the invariants hold.
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 provides an interface to file locking functionalities.
Safe conversions between textual types