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 access to platform dependent file locking APIs. There are alternative file locking packages:
GHC.IO.Handle.Lockinbase >= 4.10is good enough for most use cases. However, uses onlyHandles so these locks cannot be used for intra-process locking.ghc-filelockdoesn't support OFD locking.
This package provides the ShortText type which is suitable for keeping many short strings in memory. This is similar to how ShortByteString relates to ByteString.
The main difference between Text and ShortText is that ShortText uses UTF-8 instead of UTF-16 internally and also doesn't support zero-copy slicing (thereby saving 2 words). Consequently, the memory footprint of a (boxed) ShortText value is 4 words (2 words when unboxed) plus the length of the UTF-8 encoded payload.
This package provides a Cairo vector graphics rendering backend for the Charts library.
This package provides a library that performs fast, accurate conversion between double precision floating point and text.
The word-wrap Haskell library wraps long lines of text.
A package for convenient access to high-resolution clock and timer functions of different operating systems via a unified API.
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.
Transformers provides functor and monad transformers, inspired by the paper "Functional Programming with Overloading and Higher-Order Polymorphism", by Mark P Jones, in Advanced School of Functional Programming, 1995 http://web.cecs.pdx.edu/~mpj/pubs/springschool.html.
This package contains:
the monad transformer class (in
Control.Monad.Trans.Class)concrete functor and monad transformers, each with associated operations and functions to lift operations associated with other transformers.
This package can be used on its own in portable Haskell code, in which case operations need to be manually lifted through transformer stacks (see Control.Monad.Trans.Class for some examples). Alternatively, it can be used with the non-portable monad classes in the mtl or monads-tf packages, which automatically lift operations introduced by monad transformers through other transformers.
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.
This package provides a library for issuing notifications using FreeDesktop.org's Desktop Notifications protocol. This protocol is supported by services such as Ubuntu's NotifyOSD.
This package provides a module to use Skylighting to perform syntax highlighting and display the results in Brick-based interfaces.
This package provides an implementation of the standard diff algorithm, and utilities for pretty printing.
Turtle is a reimplementation of the Unix command line environment in Haskell so that you can use Haskell as both a shell and a scripting language. Features include:
Batteries included: Command an extended suite of predefined utilities.
Interoperability: You can still run external shell commands.
Portability: Works on Windows, OS X, and Linux.
Exception safety: Safely acquire and release resources.
Streaming: Transform or fold command output in constant space.
Patterns: Use typed regular expressions that can parse structured values.
Formatting: Type-safe printf-style text formatting.
Modern: Supports text and system-filepath.
Read "Turtle.Tutorial" for a detailed tutorial or "Turtle.Prelude" for a quick-start guide. Turtle is designed to be beginner-friendly, but as a result lacks certain features, like tracing commands. If you feel comfortable using turtle then you should also check out the Shelly library which provides similar functionality.
The texmath library provides functions to read and write TeX math, presentation MathML, and OMML (Office Math Markup Language, used in Microsoft Office). Support is also included for converting math formats to pandoc's native format (allowing conversion, via pandoc, to a variety of different markup formats). The TeX reader supports basic LaTeX and AMS extensions, and it can parse and apply LaTeX macros.
This module provides set and multiset operations on ordered lists.
This package provides a basic random number generation library, including the ability to split random number generators.
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 package provides datatypes to construct Free monads, Free monad transformers, and useful instances. In addition it provides the constructs to avoid quadratic complexity of left associative bind, as explained in:
Janis Voigtlander, Asymptotic Improvement of Computations over Free Monads, MPC'08
This is a library for testing code involving bottoms or infinite values. For the underlying theory and a larger example involving use of QuickCheck, see the article "Chasing Bottoms A Case Study in Program Verification in the Presence of Partial and Infinite Values".
vty is a terminal GUI library in the niche of ncurses, intended to be easy to use and to provide good support for common terminal types.
Haskell98 invariant functors (also known as exponential functors). For more information, see Edward Kmett's article Rotten Bananas.
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 contains simple and easy-to-use primitives for I/O using streams.
Provides a FilePath datatype and utility functions for operating on it. Unlike the filepath package, this package does not simply reuse String, increasing type safety.